Changeset View
Changeset View
Standalone View
Standalone View
app/kipiinterface.cpp
Show First 20 Lines • Show All 181 Lines • ▼ Show 20 Line(s) | |||||
182 | }; | 182 | }; | ||
183 | 183 | | |||
184 | const QRegExp KIPIImageInfo::sExtensionRE("\\.[a-z0-9]+$", Qt::CaseInsensitive); | 184 | const QRegExp KIPIImageInfo::sExtensionRE("\\.[a-z0-9]+$", Qt::CaseInsensitive); | ||
185 | 185 | | |||
186 | struct MenuInfo | 186 | struct MenuInfo | ||
187 | { | 187 | { | ||
188 | QString mName; | 188 | QString mName; | ||
189 | QList<QAction*> mActions; | 189 | QList<QAction*> mActions; | ||
190 | QString mIconName; | ||||
190 | 191 | | |||
191 | MenuInfo() | 192 | MenuInfo() | ||
192 | {} | 193 | {} | ||
193 | 194 | | |||
194 | MenuInfo(const QString& name) | 195 | MenuInfo(const QString& name, QString iconName) | ||
195 | : mName(name) | 196 | : mName(name) | ||
197 | , mIconName(iconName) | ||||
196 | {} | 198 | {} | ||
197 | }; | 199 | }; | ||
198 | typedef QMap<KIPI::Category, MenuInfo> MenuInfoMap; | 200 | typedef QMap<KIPI::Category, MenuInfo> MenuInfoMap; | ||
199 | 201 | | |||
200 | struct KIPIInterfacePrivate | 202 | struct KIPIInterfacePrivate | ||
201 | { | 203 | { | ||
202 | KIPIInterface* q; | 204 | KIPIInterface* q; | ||
203 | MainWindow* mMainWindow; | 205 | MainWindow* mMainWindow; | ||
▲ Show 20 Lines • Show All 62 Lines • ▼ Show 20 Line(s) | |||||
266 | 268 | | |||
267 | void KIPIInterface::loadPlugins() | 269 | void KIPIInterface::loadPlugins() | ||
268 | { | 270 | { | ||
269 | // Already done | 271 | // Already done | ||
270 | if (d->mPluginLoader) { | 272 | if (d->mPluginLoader) { | ||
271 | return; | 273 | return; | ||
272 | } | 274 | } | ||
273 | 275 | | |||
274 | d->mMenuInfoMap[KIPI::ImagesPlugin] = MenuInfo(i18nc("@title:menu", "Images")); | 276 | d->mMenuInfoMap[KIPI::ImagesPlugin] = MenuInfo(i18nc("@title:menu", "Images"), QStringLiteral("viewimage")); | ||
275 | d->mMenuInfoMap[KIPI::ToolsPlugin] = MenuInfo(i18nc("@title:menu", "Tools")); | 277 | d->mMenuInfoMap[KIPI::ToolsPlugin] = MenuInfo(i18nc("@title:menu", "Tools"), QStringLiteral("tools")); | ||
276 | d->mMenuInfoMap[KIPI::ImportPlugin] = MenuInfo(i18nc("@title:menu", "Import")); | 278 | d->mMenuInfoMap[KIPI::ImportPlugin] = MenuInfo(i18nc("@title:menu", "Import"), QStringLiteral("document-import")); | ||
277 | d->mMenuInfoMap[KIPI::ExportPlugin] = MenuInfo(i18nc("@title:menu", "Export")); | 279 | d->mMenuInfoMap[KIPI::ExportPlugin] = MenuInfo(i18nc("@title:menu", "Export"), QStringLiteral("document-export")); | ||
278 | d->mMenuInfoMap[KIPI::BatchPlugin] = MenuInfo(i18nc("@title:menu", "Batch Processing")); | 280 | d->mMenuInfoMap[KIPI::BatchPlugin] = MenuInfo(i18nc("@title:menu", "Batch Processing"), QStringLiteral("editimage")); | ||
279 | d->mMenuInfoMap[KIPI::CollectionsPlugin] = MenuInfo(i18nc("@title:menu", "Collections")); | 281 | d->mMenuInfoMap[KIPI::CollectionsPlugin] = MenuInfo(i18nc("@title:menu", "Collections"), QStringLiteral("view-list-symbolic")); | ||
280 | 282 | | |||
281 | d->mPluginLoader = new KIPI::PluginLoader(); | 283 | d->mPluginLoader = new KIPI::PluginLoader(); | ||
282 | d->mPluginLoader->setInterface(this); | 284 | d->mPluginLoader->setInterface(this); | ||
283 | d->mPluginLoader->init(); | 285 | d->mPluginLoader->init(); | ||
284 | d->mPluginQueue = d->mPluginLoader->pluginList(); | 286 | d->mPluginQueue = d->mPluginLoader->pluginList(); | ||
285 | d->mPluginMenu->addAction(d->mLoadingAction); | 287 | d->mPluginMenu->addAction(d->mLoadingAction); | ||
286 | loadOnePlugin(); | 288 | loadOnePlugin(); | ||
287 | } | 289 | } | ||
Show All 38 Lines | 292 | { | |||
326 | // menu | 328 | // menu | ||
327 | MenuInfoMap::Iterator | 329 | MenuInfoMap::Iterator | ||
328 | it = d->mMenuInfoMap.begin(), | 330 | it = d->mMenuInfoMap.begin(), | ||
329 | end = d->mMenuInfoMap.end(); | 331 | end = d->mMenuInfoMap.end(); | ||
330 | for (; it != end; ++it) { | 332 | for (; it != end; ++it) { | ||
331 | MenuInfo& info = it.value(); | 333 | MenuInfo& info = it.value(); | ||
332 | if (!info.mActions.isEmpty()) { | 334 | if (!info.mActions.isEmpty()) { | ||
333 | QMenu* menu = d->mPluginMenu->addMenu(info.mName); | 335 | QMenu* menu = d->mPluginMenu->addMenu(info.mName); | ||
336 | menu->setIcon(QIcon::fromTheme(info.mIconName)); | ||||
334 | qSort(info.mActions.begin(), info.mActions.end(), actionLessThan); | 337 | qSort(info.mActions.begin(), info.mActions.end(), actionLessThan); | ||
335 | Q_FOREACH(QAction * action, info.mActions) { | 338 | Q_FOREACH(QAction * action, info.mActions) { | ||
336 | menu->addAction(action); | 339 | menu->addAction(action); | ||
337 | } | 340 | } | ||
338 | } | 341 | } | ||
339 | } | 342 | } | ||
340 | 343 | | |||
341 | d->mPluginMenu->removeAction(d->mLoadingAction); | 344 | d->mPluginMenu->removeAction(d->mLoadingAction); | ||
▲ Show 20 Lines • Show All 174 Lines • Show Last 20 Lines |