Add status bar support for convertertext plugin

wilder
Laurent Montel 8 years ago
parent 070e64e890
commit 4a1ccac745
  1. 2
      CMakeLists.txt
  2. 4
      src/editor/kmcomposerwin.cpp
  3. 13
      src/editor/plugininterface/kmailplugineditorconverttextmanagerinterface.cpp
  4. 3
      src/editor/plugininterface/kmailplugineditorconverttextmanagerinterface.h

@ -66,7 +66,7 @@ find_package(Qt5 ${QT_REQUIRED_VERSION} CONFIG REQUIRED DBus Network Test Widget
set(LIBGRAVATAR_VERSION_LIB "5.9.40")
set(MAILCOMMON_LIB_VERSION_LIB "5.9.41")
set(KDEPIM_APPS_LIB_VERSION_LIB "5.9.40")
set(MESSAGELIB_LIB_VERSION_LIB "5.9.55")
set(MESSAGELIB_LIB_VERSION_LIB "5.9.57")
set(LIBKLEO_LIB_VERSION_LIB "5.9.40")
set(PIMCOMMON_LIB_VERSION_LIB "5.9.42")
set(LIBKDEPIM_LIB_VERSION_LIB "5.9.40")

@ -1402,6 +1402,10 @@ void KMComposerWin::initializePluginActions()
for (int i = 0; i < statusbarWidgetList.count(); ++i) {
statusBar()->addPermanentWidget(statusbarWidgetList.at(i), 0);
}
const QList<QWidget *> statusbarWidgetListConverter = mPluginEditorConvertTextManagerInterface->statusBarWidgetList();
for (int i = 0; i < statusbarWidgetListConverter.count(); ++i) {
statusBar()->addPermanentWidget(statusbarWidgetListConverter.at(i), 0);
}
}
}

@ -125,6 +125,7 @@ void KMailPluginEditorConvertTextManagerInterface::initializePlugins()
MessageComposer::PluginEditorConvertTextInterface *interface = static_cast<MessageComposer::PluginEditorConvertTextInterface *>(plugin->createInterface(mActionCollection, this));
interface->setRichTextEditor(mRichTextEditor);
interface->setParentWidget(mParentWidget);
interface->setPlugin(plugin);
mListPluginInterface.append(interface);
}
}
@ -191,3 +192,15 @@ QList<QAction *> KMailPluginEditorConvertTextManagerInterface::actionsType(Messa
{
return mActionHash.value(type);
}
QList<QWidget *> KMailPluginEditorConvertTextManagerInterface::statusBarWidgetList()
{
if (mStatusBarWidget.isEmpty() && !mListPluginInterface.isEmpty()) {
for (MessageComposer::PluginEditorConvertTextInterface *interface : qAsConst(mListPluginInterface)) {
if (interface->plugin()->hasStatusBarSupport()) {
mStatusBarWidget.append(interface->statusBarWidget());
}
}
}
return mStatusBarWidget;
}

@ -54,6 +54,8 @@ public:
void setInitialData(const MessageComposer::PluginEditorConverterInitialData &data);
void setDataBeforeConvertingText(const MessageComposer::PluginEditorConverterBeforeConvertingData &data);
void enableDisablePluginActions(bool richText);
QList<QWidget *> statusBarWidgetList();
Q_SIGNALS:
void reformatingTextDone();
@ -64,6 +66,7 @@ private:
KPIMTextEdit::RichTextComposer *mRichTextEditor = nullptr;
QWidget *mParentWidget = nullptr;
KActionCollection *mActionCollection = nullptr;
QList<QWidget *> mStatusBarWidget;
};
#endif // KMAILPLUGINEDITORCONVERTTEXTMANAGERINTERFACE_H

Loading…
Cancel
Save