SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib")
SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
-find_package(
- Qt5 ${REQUIRED_QT_VERSION}
- COMPONENTS
+set(QT_IDE_COMPONENTS
Concurrent
Core
LinguistTools
Qml
Quick
Sql
- WebChannel
- WebEngine
- WebEngineWidgets
- WebSockets
Widgets
- REQUIRED
)
set(QT_IDE_LIBRARIES
Qt5::Qml
Qt5::Quick
Qt5::Sql
- Qt5::WebChannel
- Qt5::WebEngineWidgets
- Qt5::WebSockets
+)
+
+if(SC_USE_WEBENGINE)
+ list(APPEND QT_IDE_COMPONENTS
+ WebChannel
+ WebEngine
+ WebEngineWidgets
+ WebSockets
+ )
+ list(APPEND QT_IDE_LIBRARIES
+ Qt5::WebChannel
+ Qt5::WebEngineWidgets
+ Qt5::WebSockets
+ )
+endif()
+
+find_package(
+ Qt5 ${REQUIRED_QT_VERSION}
+ COMPONENTS
+ ${QT_IDE_COMPONENTS}
+ REQUIRED
)
if(${CMAKE_COMPILER_IS_GNUCXX})
#include "session_manager.hpp"
#include "util/standard_dirs.hpp"
#include "../widgets/main_window.hpp"
-#include "../widgets/help_browser.hpp"
#include "../widgets/lookup_dialog.hpp"
#include "../widgets/code_editor/highlighter.hpp"
#include "../widgets/style/style.hpp"
-#include "../widgets/util/WebSocketClientWrapper.hpp"
-#include "../widgets/util/WebSocketTransport.hpp"
-#include "../widgets/util/IDEWebChannelWrapper.hpp"
#include "../../../QtCollider/hacks/hacks_mac.hpp"
#include "../primitives/localsocket_utils.hpp"
#include <QLibraryInfo>
#include <QTranslator>
#include <QDebug>
-#include <QWebChannel>
#include <QStyleFactory>
+#ifdef SC_USE_WEBENGINE
+# include <QWebChannel>
+# include "../widgets/util/WebSocketClientWrapper.hpp"
+# include "../widgets/util/WebSocketTransport.hpp"
+# include "../widgets/util/IDEWebChannelWrapper.hpp"
+#endif // SC_USE_WEBENGINE
+
using namespace ScIDE;
int main( int argc, char *argv[] )
#include "util/standard_dirs.hpp"
#include "../primitives/localsocket_utils.hpp"
-#include "../widgets/help_browser.hpp"
-
#include <yaml-cpp/node/node.h>
#include <yaml-cpp/parser.h>
#include "../../core/main.hpp"
#include "../../core/util/standard_dirs.hpp"
#include "../main_window.hpp"
-#include "../help_browser.hpp"
+
+#ifdef SC_USE_WEBENGINE
+# include "../help_browser.hpp"
+#endif // SC_USE_WEBENGINE
#include <yaml-cpp/node/node.h>
#include <yaml-cpp/parser.h>
#include "autocompleter.hpp"
#include "line_indicator.hpp"
#include "main_window.hpp"
-#include "help_browser.hpp"
#include "../util/gui_utilities.hpp"
#include "../../core/main.hpp"
#include "../../core/doc_manager.hpp"
#include "../../core/settings/manager.hpp"
#include "../../core/settings/theme.hpp"
+#ifdef SC_USE_WEBENGINE
+# include "help_browser.hpp"
+#endif // SC_USE_WEBENGINE
+
#include "QtCollider/hacks/hacks_qt.hpp"
#include <QKeyEvent>
#include <QStack>
#include <QMimeData>
#include <QUrl>
-#include <QWebEngineView>
namespace ScIDE {
#include "multi_editor.hpp"
#include "popup_text_input.hpp"
#include "post_window.hpp"
-#include "help_browser.hpp"
#include "session_switch_dialog.hpp"
#include "sessions_dialog.hpp"
#include "tool_box.hpp"
#include "code_editor/sc_editor.hpp"
#include "settings/dialog.hpp"
+#ifdef SC_USE_WEBENGINE
+# include "help_browser.hpp"
+#endif // SC_USE_WEBENGINE
+
#include "QtCollider/hacks/hacks_qt.hpp"
#include "SC_Version.hpp"
#include <QToolButton>
#include <QLayout>
#include <QDebug>
-#include <QWebEngineView>
+
+#ifdef SC_USE_WEBENGINE
+# include <QWebEngineView>
+#endif // SC_USE_WEBENGINE
namespace ScIDE {
}
switch (control) {
+#ifdef SC_USE_WEBENGINE
// FIXME: this is a workaround for the WebKit bug #104116 (or a variation on it).
case QStyle::CC_ScrollBar: {
if (qobject_cast<const QWebEngineView*>(widget) != 0 && option->type == QStyleOption::SO_Slider) {
return;
}
}
+#endif // SC_USE_WEBENGINE
case QStyle::CC_ToolButton: {
// TODO: We only draw either text, or icon, or arrow
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#include "WebSocketTransport.hpp"
+#ifdef SC_USE_WEBENGINE
-#include <QJsonDocument>
-#include <QWebSocket>
+# include "WebSocketTransport.hpp"
+
+# include <QJsonDocument>
+# include <QWebSocket>
namespace ScIDE {
}
} // namespace ScIDE
+
+#endif // SC_USE_WEBENGINE