void Library::restoreItemState(ModelItem * item) { QHash<QString, int> * cat; bool isListened = false; int temp; QString name; QList<QString>::iterator i; for (i = item -> getTitlesCache() -> begin(); i != item -> getTitlesCache() -> end(); ++i) { name = (*i); cat = getCatalog(name); if (cat -> contains(name)) { temp = cat -> value(name); if (temp == 1) { item -> getState() -> setLiked(); return; } isListened = isListened || (temp == 0); } } if (isListened) item -> getState() -> setListened(); }
void controlyPlugin::getResults(QList<InputData>* inputData, QList<CatItem>* results) { // if user enters "*.controly", dynamically return all elements that we added to the primary catalog (for informational / debugging purposes only) if (inputData->size() == 1) { const QString & text = inputData->first().getText(); if (text.compare("*.controly") == 0) { QList<CatItem> controlyCatalog; getCatalog(&controlyCatalog); CatItem temp("ItemCount.controly", QString::number(controlyCatalog.size()), HASH_controly, getIcon()); temp.usage = 32000; results->append(temp); (*results) += controlyCatalog; } } if (inputData->count() != 2) return; if (inputData->first().getTopResult().id == HASH_controly) { QString text = inputData->at(1).getText(); addCatItem(text, results, "Launchy.options", "Options"); addCatItem(text, results, "Launchy.rebuild", "Rebuild Catalog"); addCatItem(text, results, "Launchy.exit", "Exit"); } }
int testpluginPlugin::msg(int msgId, void* wParam, void* lParam) { bool handled = false; switch (msgId) { case MSG_INIT: init(); handled = true; break; case MSG_GET_LABELS: getLabels((InputList*) wParam); handled = true; break; case MSG_GET_ID: getID((uint*) wParam); handled = true; break; case MSG_GET_NAME: getName((QString*) wParam); handled = true; break; case MSG_GET_RESULTS: getResults((InputList*) wParam, (QList<CatItem>*) lParam); handled = true; break; case MSG_GET_CATALOG: getCatalog((QList<CatItem>*) wParam); handled = true; break; case MSG_EXTEND_CATALOG: extendCatalog((SearchInfo*) wParam, (QList<CatItem>*)lParam); handled = true; break; case MSG_LAUNCH_ITEM: handled = launchItem((InputList*) wParam, (QList<CatItem>*) lParam); break; case MSG_HAS_DIALOG: handled = true; break; case MSG_DO_DIALOG: doDialog((QWidget*) wParam, (QWidget**) lParam); break; case MSG_END_DIALOG: endDialog((bool) wParam); break; case MSG_PATH: setPath((QString *) wParam); default: break; } return handled; }
int controlyPlugin::msg(int msgId, void* wParam, void* lParam) { int handled = 0; switch (msgId) { case MSG_INIT: init(); handled = 1; break; case MSG_GET_ID: getID((uint*) wParam); handled = 1; break; case MSG_GET_NAME: getName((QString*) wParam); handled = 1; break; case MSG_GET_CATALOG: getCatalog((QList<CatItem>*) wParam); handled = 1; break; case MSG_GET_RESULTS: getResults((QList<InputData>*) wParam, (QList<CatItem>*) lParam); handled = 1; break; case MSG_LAUNCH_ITEM: handled = launchItem((QList<InputData>*) wParam, (CatItem*) lParam); break; case MSG_HAS_DIALOG: handled = true; break; case MSG_DO_DIALOG: doDialog((QWidget*) wParam, (QWidget**) lParam); break; case MSG_END_DIALOG: endDialog(wParam != 0); break; case MSG_PATH: setPath((QString *) wParam); break; default: break; } return handled; }
bool Library::proceedItemNames(QList<QString> * names, int state) { QHash<QString, int> * cat; QChar letter; bool catState = false, catalog_has_item, catalog_state_has_item; QString name; QList<QString> * saveList; QList<QString>::iterator i; for (i = names -> begin(); i != names -> end(); ++i) { saveList = 0; name = (*i); letter = getCatalogChar(name); cat = getCatalog(letter); catalog_has_item = cat -> contains(name); if (!catalog_has_item || (catalog_has_item && cat -> value(name) < state)) { qDebug() << "********************************** insert Name " << name; cat -> insert(name, state); catalog_state_has_item = catalogs_state.contains(letter); if (catalog_state_has_item) { saveList = catalogs_state.value(letter); if (saveList != 0) qDebug() << "LLL: " << letter << " Libb: " << (*saveList); } if (catalog_has_item) { if (saveList) { delete saveList; } catalogs_state.insert(letter, 0); } else { if (!catalog_state_has_item) { if (saveList == 0) { saveList = new QList<QString>(); } } saveList -> append(name); catalogs_state.insert(letter, saveList); } } } return catState; }
void controlyPlugin::getResults(QList<InputData>* id, QList<CatItem>* results) { // if user enters "*.controly", dynamically return all elements that we added to the primary catalog (for informational / debugging purposes only) if (id->size() == 1) { const QString & text = id->first().getText(); if (text.compare("*.controly") == 0) { QList<CatItem> controlyCatalog; getCatalog(&controlyCatalog); CatItem temp("ItemCount.controly", QString::number(controlyCatalog.size()), HASH_controly, getIcon()); temp.usage = 32000; results->append(temp); (*results) += controlyCatalog; } } if (id->count() != 2) return; if (id->first().getTopResult().id == HASH_controly) { QSettings* set = *settings; if (set == NULL) return; CatItem tmp = CatItem("Launchy.options", "Options", HASH_controly, getIcon()); tmp.usage = set->value("controly/OptionsCount",0).toInt(); results->push_back(tmp); tmp = CatItem("Launchy.reindex", "Rebuild Index", HASH_controly, getIcon()); tmp.usage = set->value("controly/RebuildCount",0).toInt(); results->push_back(tmp); tmp = CatItem("Launchy.exit", "Exit", HASH_controly, getIcon()); tmp.usage = set->value("controly/ExitCount",0).toInt(); results->push_back(tmp); } }
QHash<QString, int> * Library::getCatalog(QString name) { if (name.length() == 0) return new QHash<QString, int>(); QChar c = getCatalogChar(name); return getCatalog(c); }