Page MenuHomePhabricator

Make QtWebEngine an optional dependency
Closed, ResolvedPublic

Description

@mpkh asked in the General Chat, if it is possible to build MITK without QtWebEngine. This was my answer:

The following plugins/modules have direct dependencies to QWebEngine:

  • org.blueberry.ui.qt.help: Switch off BLUEBERRY_USE_QT_HELP in CMake.
  • org.mitk.gui.qt.diffusionimagingapp: You don't need this anyways, right?
  • org.mitk.gui.qt.extapplication: This is "the configuration" of the Workbench. You can switch it off when you also switch off MITK_BUILD_APP_Workbench.
  • QtWidgetsExt: This module contains the histogram widget for the image statistics plugin. It also is a dependency for some other components in MITK that do not need the histogram widget.

I think it would be a good idea to easily enable a WebEngine free MITK Workbench, but there is a bit of work to be done:

  • Change the required dependency to QWebEngine to an optional dependency in our CMake script.
  • Make it optional in extapplication.
  • Separate the QWebEngine based widget(s) from QtWidgetsExt into a dedicated module.

Revisions and Commits

Event Timeline

kislinsk edited projects, added MITK (2016-11); removed MITK.
kislinsk claimed this task.
  • Introduced a new CMake variable MITK_USE_QT_WEBENGINE that is set to ON by default.
  • QmitkHistogramJSWidget moved to a new, dedicated module for WebEngine based widgets: QtWidgetsWeb.
  • org.mitk.gui.qt.extapplication can be built without QtWebEngine. The Welcome screen is empty then.

MITK_USE_QT_WEBENGINE needs to be added to rMPT MITK-ProjectTemplate and Restricted Repository as well.