26 #include <QApplication>
28 #include <QLibraryInfo>
34 #include <KConfigGroup>
36 #include <KStandardDirs>
37 #include <knewstuff3/downloadmanager.h>
65 QString(
"misc/financequote.pl"));
79 connect(
m_manager, SIGNAL(searchResult(KNS3::Entry::List)),
this,
91 foreach (
const KNS3::Entry &entry, updates) {
92 qDebug() << entry.name();
99 qDebug() << entry.summary();
106 KConfig *kconfig = &config;
107 QStringList groups = kconfig->groupList();
109 QStringList::Iterator it;
110 QRegExp onlineQuoteSource(QString(
"^Online-Quote-Source-(.*)$"));
113 for (it = groups.begin(); it != groups.end(); it = groups.erase(it)) {
114 if (onlineQuoteSource.indexIn(*it) >= 0) {
116 it = groups.insert(it, onlineQuoteSource.cap(1));
125 QMap<QString, AlkOnlineQuoteSource>::iterator it_source = defaults.begin();
126 while (it_source != defaults.end()) {
127 if (!groups.contains((*it_source).name())) {
128 groups += (*it_source).name();
129 (*it_source).write();
145 QString(
"financequote.pl"));
150 qApp->processEvents();
167 foreach (
const QString &file,
168 KStandardDirs().findAllResources(
"data", relPath + QString::fromLatin1(
"/*.txt"))) {
170 QString file2 = f.completeBaseName();
172 if (source.isEmpty()) {
173 qDebug() <<
"skipping" << file2;
176 if (!sources.contains(file2)) {
177 sources.push_back(file2);
186 QMap<QString, AlkOnlineQuoteSource> result;
197 "https://fx-rate.net/%1/%2",
199 "1[ a-zA-Z]+=</span><br */?> *(\\d+\\.\\d+)",
200 "updated\\s\\d+:\\d+:\\d+\\(\\w+\\)\\s+(\\d{1,2}/\\d{2}/\\d{4})",
204 source.setProfile(
m_p);
205 result[source.name()] = source;
206 source.setName(source.name() +
".webkit");
207 result[source.name()] = source;
222 return QLibraryInfo::location(QLibraryInfo::PrefixPath) +
"/share";
232 return QDir::homePath();
235 return qgetenv(
"APPDATA");
237 return QDir::homePath();
249 return QString(
"%1/.kde4/share/config").arg(
homeRootPath());
269 return QString(
"%1/.kde4/share/apps").arg(
homeRootPath());
281 const QString &ghnsConfigFile)
299 KConfigGroup group = ghnsFile.group(
"KNewStuff3");
317 QString configFile = KStandardDirs::locate(
"config",
d->
m_GHNSFile);
318 if (configFile.isEmpty()) {
319 configFile = QString(
"%1/%2").arg(KNSRC_DIR,
d->
m_GHNSFile);
328 QFileInfo f(path + fileName);
330 return f.absoluteFilePath();
416 #include "alkonlinequotesprofile.moc"