int beginPlugin(HINSTANCE h_instance) { WNDCLASS wc; ZeroMemory(&wc, sizeof(wc)); wc.lpfnWndProc = PluginProc; wc.hInstance = h_instance; wc.lpszClassName = pluginInfo(APPNAME); RegisterClass(&wc); hPluginWnd = CreateWindowEx( WS_EX_TOOLWINDOW, pluginInfo(APPNAME), NULL, WS_POPUP|WS_ICONIC, -4, -4, 0, 0, HWND_MESSAGE, NULL, h_instance, NULL ); hProcess = GetCurrentProcess(); SendMessage(GetBBWnd(), BB_REGISTERMESSAGE, (WPARAM)hPluginWnd, (LPARAM)bb_messages); return 0; }
DOMMimeType* DOMPlugin::item(unsigned index) { if (index >= pluginInfo().mimes.size()) return nullptr; const MimeClassInfo& mime = pluginInfo().mimes[index]; const Vector<MimeClassInfo>& mimes = m_pluginData->mimes(); for (unsigned i = 0; i < mimes.size(); ++i) { if (mimes[i] == mime && m_pluginData->mimePluginIndices()[i] == m_index) return DOMMimeType::create(m_pluginData.get(), frame(), i); } return nullptr; }
PassRefPtrWillBeRawPtr<DOMMimeType> DOMPlugin::item(unsigned index) { if (index >= pluginInfo().mimes.size()) return 0; const MimeClassInfo& mime = pluginInfo().mimes[index]; const Vector<MimeClassInfo>& mimes = m_pluginData->mimes(); for (unsigned i = 0; i < mimes.size(); ++i) { if (mimes[i] == mime && m_pluginData->mimePluginIndices()[i] == m_index) return DOMMimeType::create(m_pluginData.get(), m_frame, i).get(); } return 0; }
AmpacheServiceFactory::AmpacheServiceFactory( QObject *parent, const QVariantList &args ) : ServiceFactory( parent, args ) { KPluginInfo pluginInfo( "amarok_service_ampache.desktop", "services" ); pluginInfo.setConfig( config() ); m_info = pluginInfo; }
KPluginInfo AmpacheServiceFactory::info() { KPluginInfo pluginInfo( "amarok_service_ampache.desktop", "services" ); pluginInfo.setConfig( config() ); return pluginInfo; }
MassStorageDeviceHandlerFactory::MassStorageDeviceHandlerFactory( QObject *parent, const QVariantList &args ) : DeviceHandlerFactory( parent, args ) { KPluginInfo pluginInfo( "amarok_device_massstorage.desktop", "services" ); pluginInfo.setConfig( Amarok::config("Device_MassiveStorage") ); m_info = pluginInfo; }
PluginInfo LeftbagdetectorPlugin::getPluginInfo() const { PluginInfo pluginInfo( "Left Bag Detector Plugin", 0, 1, "This is an anomaly detectior for abandoned bags", "Chathuranga Hettiarachchi"); return pluginInfo; }
PluginInfo Faceanomaly1Plugin::getPluginInfo() const { PluginInfo pluginInfo( "Faceanomaly1 Plugin", 0, 1, "Plugin Description goes here", "Plugin Creator"); return pluginInfo; }
PvlGroup PolygonSeeder::PluginParameters(std::string grpName) { PvlGroup pluginInfo(grpName); PvlKeyword name("Name", p_algorithmName); PvlKeyword minThickness("MinimumThickness", p_minimumThickness); PvlKeyword minArea("MinimumArea", p_minimumArea); pluginInfo.AddKeyword(name); pluginInfo.AddKeyword(minThickness); pluginInfo.AddKeyword(minArea); return pluginInfo; }
PvlGroup LimitPolygonSeeder::PluginParameters(QString grpName) { PvlGroup pluginInfo(grpName); PvlKeyword name("Name", Algorithm()); PvlKeyword minThickness("MinimumThickness", toString(MinimumThickness())); PvlKeyword minArea("MinimumArea", toString(MinimumArea())); PvlKeyword majAxis("MajorAxisPoints", toString(p_majorAxisPts)); PvlKeyword minAxis("MinorAxisPoints", toString(p_minorAxisPts)); pluginInfo.addKeyword(name); pluginInfo.addKeyword(minThickness); pluginInfo.addKeyword(minArea); pluginInfo.addKeyword(majAxis); pluginInfo.addKeyword(minAxis); return pluginInfo; }
unsigned DOMPlugin::length() const { return pluginInfo().mimes.size(); }
String DOMPlugin::description() const { return pluginInfo().desc; }
String DOMPlugin::filename() const { return pluginInfo().file; }
String DOMPlugin::name() const { return pluginInfo().name; }
KPluginInfo Mp3tunesServiceFactory::info() { KPluginInfo pluginInfo( "amarok_service_mp3tunes.desktop", "services" ); pluginInfo.setConfig( config() ); return pluginInfo; }
QString Plugin::displayName() const { return pluginInfo().isValid() ? pluginInfo().name() : QString(); }
LPCSTR engineInfo(int field) { return pluginInfo(field); }
//---------------------------------------------------------------------------- void ctkPluginStorageSQL::updateDB() { QSqlDatabase database = getConnection(); QSqlQuery query(database); beginTransaction(&query, Write); // 1. Get the state information of all plug-ins (it is assumed that // plug-ins marked as UNINSTALLED (startlevel == -2) are already removed QString statement = "SELECT ID,MAX(Generation),Location,LocalPath,Timestamp,StartLevel,AutoStart,K " "FROM " PLUGINS_TABLE " GROUP BY ID"; QList<int> outdatedIds; QList<QSharedPointer<ctkPluginArchiveSQL> > updatedPluginArchives; try { executeQuery(&query, statement); // 2. Check the timestamp for each plug-in while (query.next()) { QFileInfo pluginInfo(query.value(EBindIndex3).toString()); QDateTime pluginLastModified = pluginInfo.lastModified(); // Make sure the QDateTime has the same accuracy as the one in the database pluginLastModified = getQDateTimeFromString(getStringFromQDateTime(pluginLastModified)); if (pluginLastModified > getQDateTimeFromString(query.value(EBindIndex4).toString())) { QSharedPointer<ctkPluginArchiveSQL> updatedPA( new ctkPluginArchiveSQL(this, query.value(EBindIndex2).toUrl(), // plug-in location url query.value(EBindIndex3).toString(), // plugin local path query.value(EBindIndex).toInt(), // plugin id query.value(EBindIndex5).toInt(), // start level QDateTime(), // last modififed query.value(EBindIndex6).toInt()) // auto start setting ); updatedPA->key = query.value(EBindIndex7).toInt(); updatedPluginArchives << updatedPA; // remember the plug-in ids for deletion outdatedIds << query.value(EBindIndex).toInt(); } } } catch (...) { rollbackTransaction(&query); throw; } query.finish(); query.clear(); if (!outdatedIds.isEmpty()) { // 3. Remove all traces from outdated plug-in data. Due to cascaded delete, // it is sufficient to remove the records from the main table statement = "DELETE FROM " PLUGINS_TABLE " WHERE ID IN (%1)"; QString idStr; foreach(int id, outdatedIds) { idStr += QString::number(id) + ","; }
QString Plugin::pluginIcon() const { return pluginInfo().isValid() ? pluginInfo().icon() : QString(); }
void endPlugin(HINSTANCE h_instance) { DestroyWindow(hPluginWnd); SendMessage(GetBBWnd(), BB_UNREGISTERMESSAGE, (WPARAM)hPluginWnd, (LPARAM)bb_messages); UnregisterClass(pluginInfo(APPNAME), h_instance); }