diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index cae6ba9c..0e0369ee 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -9,20 +9,10 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake") set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTOUIC ON) set(CMAKE_AUTORCC ON) +find_package(Qt5 REQUIRED COMPONENTS Core Widgets Gui WebKit WebKitWidgets) -set(QT_USE_MODULES Core Widgets Gui) -find_package(Qt5 REQUIRED COMPONENTS ${QT_USE_MODULES}) -if (Qt5_VERSION_MINOR GREATER 7) - list(APPEND QT_USE_MODULES WebEngine WebEngineWidgets) - message("Using QT5 WebEngine instead WebKit") - add_definitions(-DUSE_WEBENGINE) - find_package(Qt5 REQUIRED COMPONENTS ${QT_USE_MODULES}) -else (Qt5_VERSION_MINOR GREATER 7) - set(CMAKE_AUTOUIC ON) - list(APPEND QT_USE_MODULES WebKit WebKitWidgets) - find_package(Qt5 REQUIRED COMPONENTS ${QT_USE_MODULES}) -endif(Qt5_VERSION_MINOR GREATER 7) if(WIN32) # use radare2 libraries from submodule on windows @@ -130,40 +120,13 @@ set(UI_FILES widgets/commentswidget.ui widgets/stringswidget.ui widgets/flagswidget.ui + widgets/memwidget/memorywidget.ui widgets/sdbdock.ui dialogs/commentsdialog.ui widgets/sidebar.ui + widgets/dashboard.ui dialogs/xrefsdialog.ui) -if (Qt5_VERSION_MINOR GREATER 7) - list(APPEND UI_FILES webengine/widgets/memwidget/memorywidget.ui - webengine/widgets/dashboard.ui) - - set(UI_FILES_OUT "") - - # Workaround for Qt 5.8 - # AutoUIC looking for ui files in the same directory as source code - # files. This code directly calls uic for headers generation. - foreach(it ${UI_FILES}) - message("Preprocessing uic: ${it}") - get_filename_component(outfile ${it} NAME_WE) - get_filename_component(infile ${it} ABSOLUTE) - set(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) - add_custom_command(OUTPUT ${outfile} - COMMAND ${Qt5Widgets_UIC_EXECUTABLE} - ARGS ${ui_options} -o ${outfile} ${infile} - MAIN_DEPENDENCY ${infile} VERBATIM) - list(APPEND UI_FILES_OUT ${outfile}) - endforeach() - - set(UI_FILES ${UI_FILES_OUT}) - -else (Qt5_VERSION_MINOR GREATER 7) - list(APPEND UI_FILES widgets/memwidget/memorywidget.ui - widgets/dashboard.ui) -endif (Qt5_VERSION_MINOR GREATER 7) - - set(QRC_FILES resources.qrc) @@ -174,5 +137,5 @@ add_definitions("-DAPP_VERSION=\"${IAITO_VERSION_FULL}\"") add_executable(iaito ${UI_FILES} ${QRC_FILES} ${SOURCE_FILES} ${HEADER_FILES}) -qt5_use_modules(iaito ${QT_USE_MODULES}) +qt5_use_modules(iaito Core Widgets Gui WebKit WebKitWidgets) target_link_libraries(iaito ${RADARE2_LIBRARIES}) diff --git a/src/webengine/widgets/dashboard.ui b/src/webengine/widgets/dashboard.ui deleted file mode 100644 index 52abebc4..00000000 --- a/src/webengine/widgets/dashboard.ui +++ /dev/null @@ -1,1197 +0,0 @@ - - - Dashboard - - - - 0 - 0 - 1055 - 999 - - - - background-color: rgb(255, 255, 255); - - - Dashboard - - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - QFrame::NoFrame - - - QFrame::Plain - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - true - - - - - 0 - 0 - 1055 - 977 - - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - Qt::Horizontal - - - - 39 - 20 - - - - - - - - QFrame::NoFrame - - - QFrame::Plain - - - - - - - 19 - 75 - true - - - - OVERVIEW - - - - - - - Qt::Horizontal - - - - - - - - 17 - 75 - true - - - - Info - - - - - - - 10 - - - 0 - - - 0 - - - - - QFormLayout::ExpandingFieldsGrow - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter - - - 3 - - - - - - 75 - true - - - - File: - - - - - - - -- - - - false - - - true - - - - - - - - 75 - true - - - - Format: - - - - - - - -- - - - false - - - true - - - - - - - - 75 - true - - - - Mode: - - - - - - - -- - - - false - - - true - - - - - - - - 75 - true - - - - Size: - - - - - - - - 75 - true - - - - Type: - - - - - - - -- - - - false - - - true - - - - - - - - 75 - true - - - - Class: - - - - - - - -- - - - false - - - true - - - - - - - - 75 - true - - - - Language: - - - - - - - -- - - - false - - - true - - - - - - - - 75 - true - - - - Bits: - - - - - - - -- - - - false - - - true - - - - - - - -- - - - false - - - true - - - - - - - - - QFormLayout::ExpandingFieldsGrow - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter - - - 3 - - - 0 - - - - - - 75 - true - - - - FD: - - - - - - - -- - - - false - - - true - - - - - - - - 75 - true - - - - Base addr: - - - - - - - - 75 - true - - - - Virtual addr: - - - - - - - -- - - - false - - - true - - - - - - - - 75 - true - - - - Canary: - - - - - - - -- - - - false - - - true - - - - - - - - 75 - true - - - - Crypto: - - - - - - - -- - - - false - - - true - - - - - - - - 75 - true - - - - NX bit: - - - - - - - -- - - - false - - - true - - - - - - - - 75 - true - - - - PIC: - - - - - - - -- - - - false - - - true - - - - - - - - 75 - true - - - - Static: - - - - - - - -- - - - false - - - true - - - - - - - -- - - - false - - - true - - - - - - - - - QFormLayout::ExpandingFieldsGrow - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter - - - 3 - - - - - - 75 - true - - - - Architecture: - - - - - - - -- - - - false - - - true - - - - - - - - 75 - true - - - - Machine: - - - - - - - -- - - - false - - - true - - - - - - - - 75 - true - - - - OS: - - - - - - - -- - - - false - - - true - - - - - - - - 75 - true - - - - Subsystem: - - - - - - - -- - - - false - - - true - - - - - - - - 75 - true - - - - Stripped: - - - - - - - -- - - - false - - - true - - - - - - - - 75 - true - - - - Relocs: - - - - - - - -- - - - false - - - true - - - - - - - - 75 - true - - - - Endianness: - - - - - - - -- - - - false - - - true - - - - - - - - 75 - true - - - - Compiled: - - - - - - - -- - - - false - - - true - - - - - - - - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 5 - - - - - - - - Qt::Horizontal - - - - - - - 0 - - - - - - 17 - 75 - true - - - - Hashes - - - - - - - - 17 - 75 - true - - - - Libraries - - - - - - - - - 0 - - - - - QFormLayout::ExpandingFieldsGrow - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter - - - 3 - - - - - - 75 - true - - - - MD5: - - - - - - - - - - false - - - true - - - - - - - - 75 - true - - - - SHA1: - - - - - - - - - - false - - - true - - - - - - - - 0 - 0 - - - - - 75 - true - - - - Entropy: - - - - - - - - 0 - 0 - - - - - - - - - - - - - - - - - - Qt::Horizontal - - - - - - - - 17 - 75 - true - - - - Statistics - - - - - - - QTabBar -{ - qproperty-drawBase: 0; -} - -QTabWidget::pane { /* The tab widget frame */ - border-top: 0px; -} - -QTabBar::tab { - background: rgb(240, 240, 240); - border: 0px solid #2180a9; - border-bottom-color: #2180a9; - border-top-left-radius: 0px; - border-top-right-radius: 0px; - min-width: 8ex; - padding: 5px; - margin-bottom: 3px; - margin-top: 3px; -} - -QTabBar::tab:selected { - background: #2180a9; - color: #FFFFFF; -} - -QTabBar::tab:hover { - background: #2180a9; /* #3C879E; */ - color: #FFFFFF; -} - - - QTabWidget::North - - - 0 - - - - Line - - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - 0 - 0 - - - - - 950 - 400 - - - - - 950 - 400 - - - - - qrc:/html/stats.html - - - - - - - - - Polar - - - - 0 - - - 0 - - - 20 - - - 0 - - - 0 - - - - - - 0 - 0 - - - - - 950 - 400 - - - - - 950 - 400 - - - - - qrc:/html/fcn_stats.html - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - verticalSpacer_3 - polarWebView - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - - - - QWebEngineView - QWidget -
QtWebEngineWidgets/QWebEngineView
-
-
- - -
diff --git a/src/webengine/widgets/memwidget/memorywidget.ui b/src/webengine/widgets/memwidget/memorywidget.ui deleted file mode 100644 index ec844545..00000000 --- a/src/webengine/widgets/memwidget/memorywidget.ui +++ /dev/null @@ -1,3055 +0,0 @@ - - - MemoryWidget - - - - 0 - 0 - 950 - 767 - - - - - 0 - 0 - - - - Memory - - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - 0 - 0 - - - - - 0 - 0 - - - - background-color: #333; - - - QFrame::NoFrame - - - QFrame::Plain - - - 0 - - - - 5 - - - 0 - - - 10 - - - 0 - - - 0 - - - - - - 0 - 0 - - - - Disassembly - - - QToolButton { /* all types of tool button */ - border: 5px solid #333; - border-left: 10px solid #333; - border-right: 10px solid #333; - border-radius: 0px; - background-color: #333; - } - -QToolButton:hover { - border: 5px solid #444; - border-radius: 0px; - background-color: #444; - } - -QToolButton:checked { - border: 5px solid #2180a9; - border-radius: 0px; - background-color: #2180a9; -} - -QToolTip { - background-color: #444; - border: 3px solid #444; - color: rgb(232, 232, 232); -} - - - - - - - :/new/prefix1/img/icons/disas_light.png - :/new/prefix1/img/icons/disas_white.png:/new/prefix1/img/icons/disas_light.png - - - true - - - true - - - false - - - buttonGroup - - - - - - - - 0 - 0 - - - - Graph - - - QToolButton { /* all types of tool button */ - border: 5px solid #333; - border-left: 10px solid #333; - border-right: 10px solid #333; - border-radius: 0px; - background-color: #333; - } - -QToolButton:hover { - border: 5px solid #444; - border-radius: 0px; - background-color: #444; - } - -QToolButton:checked { - border: 5px solid #2180a9; - border-radius: 0px; - background-color: #2180a9; -} - -QToolTip { - background-color: #444; - border: 3px solid #444; - color: rgb(232, 232, 232); -} - - - - - - - :/new/prefix1/img/icons/graph_light.png - :/new/prefix1/img/icons/graph_white.png:/new/prefix1/img/icons/graph_light.png - - - true - - - false - - - buttonGroup - - - - - - - - 0 - 0 - - - - Hexdump - - - QToolButton { /* all types of tool button */ - border: 5px solid #333; - border-left: 10px solid #333; - border-right: 10px solid #333; - border-radius: 0px; - background-color: #333; - } - -QToolButton:hover { - border: 5px solid #444; - border-radius: 0px; - background-color: #444; - } - -QToolButton:checked { - border: 5px solid #2180a9; - border-radius: 0px; - background-color: #2180a9; -} - -QToolTip { - background-color: #444; - border: 3px solid #444; - color: rgb(232, 232, 232); -} - - - - - - - :/new/prefix1/img/icons/hexdump_light.png - :/new/prefix1/img/icons/hexdump_white.png:/new/prefix1/img/icons/hexdump_light.png - - - true - - - false - - - buttonGroup - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - Show/Hide preview panel - - - QToolButton { /* all types of tool button */ - border: 5px solid #333; - border-left: 10px solid #333; - border-right: 10px solid #333; - border-radius: 0px; - background-color: #333; - } - -QToolButton:hover { - border: 5px solid #444; - border-left: 10px solid #444; - border-right: 10px solid #444; - border-radius: 0px; - background-color: #444; - } - -QToolButton:pressed { - border: 5px solid #2180a9; - border-left: 10px solid #2180a9; - border-right: 10px solid #2180a9; - border-radius: 0px; - background-color: #2180a9; -} - -QToolButton:checkeds { - border: 5px solid #2180a9; - border-left: 10px solid #2180a9; - border-right: 10px solid #2180a9; - border-radius: 0px; - background-color: #2180a9; -} - -QToolTip { - background-color: #444; - border: 3px solid #444; - color: rgb(232, 232, 232); -} - - - - - - - :/new/prefix1/img/icons/eye.png - :/new/prefix1/img/icons/eye_white.png:/new/prefix1/img/icons/eye.png - - - true - - - true - - - - - - - Show/Hide memory sidebar - - - QToolButton { /* all types of tool button */ - border: 5px solid #333; - border-left: 10px solid #333; - border-right: 10px solid #333; - border-radius: 0px; - background-color: #333; - } - -QToolButton:hover { - border: 5px solid #444; - border-left: 10px solid #444; - border-right: 10px solid #444; - border-radius: 0px; - background-color: #444; - } - -QToolButton:pressed { - border: 5px solid #2180a9; - border-left: 10px solid #2180a9; - border-right: 10px solid #2180a9; - border-radius: 0px; - background-color: #2180a9; -} - -QToolButton:checkeds { - border: 5px solid #2180a9; - border-left: 10px solid #2180a9; - border-right: 10px solid #2180a9; - border-radius: 0px; - background-color: #2180a9; -} - -QToolTip { - background-color: #444; - border: 3px solid #444; - color: rgb(232, 232, 232); -} - - - - - - - :/new/prefix1/img/icons/right.png:/new/prefix1/img/icons/right.png - - - true - - - - - - - Qt::Horizontal - - - - - - - Settings - - - QToolButton { /* all types of tool button */ - border: 5px solid #333; - border-left: 10px solid #333; - border-right: 10px solid #333; - border-radius: 0px; - background-color: #333; - } - -QToolButton:hover { - border: 5px solid #444; - border-radius: 0px; - background-color: #444; - } - -QToolButton:pressed { - border: 5px solid #2180a9; - border-radius: 0px; - background-color: #2180a9; -} - -QToolTip { - background-color: #444; - border: 3px solid #444; - color: rgb(232, 232, 232); -} - - - - - - - :/new/prefix1/img/icons/cog_light.png:/new/prefix1/img/icons/cog_light.png - - - QToolButton::InstantPopup - - - true - - - - - - - - - - true - - - QTabWidget::pane { /* The tab widget frame */ -border-top: 0px; -} - - - QTabWidget::South - - - 0 - - - false - - - - Disassembly - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - QSplitter::handle { - height: 2px; - background-color: rgb(255, 255, 255); - image: url(:/new/prefix1/img/icons/tabs.png); -} - - - Qt::Horizontal - - - 2 - - - - - 0 - 0 - - - - - 0 - 0 - - - - - Anonymous Pro - 13 - - - - - - - QFrame::NoFrame - - - 0 - - - Qt::ScrollBarAlwaysOff - - - true - - - QPlainTextEdit::NoWrap - - - true - - - - - - false - - - 80 - - - Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse - - - - - QFrame::NoFrame - - - QFrame::Plain - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - background-color: rgb(255, 255, 255); - - - QFrame::NoFrame - - - QFrame::Plain - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - Qt::Horizontal - - - - 55 - 20 - - - - - - - - QToolButton { /* all types of tool button */ - border: 3px solid rgb(255, 255, 255); - border-left: 10px solid rgb(255, 255, 255); - border-right: 10px solid rgb(255, 255, 255); - border-radius: 0px; - background-color: rgb(255, 255, 255); - color: rgb(191, 191, 191); - } - -QToolButton:hover { - border: 3px solid #2180a9; - border-left: 10px solid #2180a9; - border-right: 10px solid #2180a9; - border-radius: 0px; - background-color: #2180a9; - color: rgb(255, 255, 255); - } - -QToolButton:checked { - border: 3px solid #999; - border-left: 10px solid #999; - border-right: 10px solid #999; - border-radius: 0px; - background-color: #999; - color: rgb(255, 255, 255); -} - -QToolTip { - background-color: #444; - border: 3px solid #444; - color: rgb(232, 232, 232); -} - - - Preview - - - true - - - false - - - buttonGroup_3 - - - - - - - QToolButton { /* all types of tool button */ - border: 3px solid rgb(255, 255, 255); - border-left: 10px solid rgb(255, 255, 255); - border-right: 10px solid rgb(255, 255, 255); - border-radius: 0px; - background-color: rgb(255, 255, 255); - color: rgb(191, 191, 191); - } - -QToolButton:hover { - border: 3px solid #2180a9; - border-left: 10px solid #2180a9; - border-right: 10px solid #2180a9; - border-radius: 0px; - background-color: #2180a9; - color: rgb(255, 255, 255); - } - -QToolButton:checked { - border: 3px solid #999; - border-left: 10px solid #999; - border-right: 10px solid #999; - border-radius: 0px; - background-color: #999; - color: rgb(255, 255, 255); -} - -QToolTip { - background-color: #444; - border: 3px solid #444; - color: rgb(232, 232, 232); -} - - - Pseudo - - - true - - - false - - - buttonGroup_3 - - - - - - - QToolButton { /* all types of tool button */ - border: 3px solid rgb(255, 255, 255); - border-left: 10px solid rgb(255, 255, 255); - border-right: 10px solid rgb(255, 255, 255); - border-radius: 0px; - background-color: rgb(255, 255, 255); - color: rgb(191, 191, 191); - } - -QToolButton:hover { - border: 3px solid #2180a9; - border-left: 10px solid #2180a9; - border-right: 10px solid #2180a9; - border-radius: 0px; - background-color: #2180a9; - color: rgb(255, 255, 255); - } - -QToolButton:checked { - border: 3px solid #999; - border-left: 10px solid #999; - border-right: 10px solid #999; - border-radius: 0px; - background-color: #999; - color: rgb(255, 255, 255); -} - -QToolTip { - background-color: #444; - border: 3px solid #444; - color: rgb(232, 232, 232); -} - - - Graph - - - true - - - true - - - buttonGroup_3 - - - - - - - Qt::Horizontal - - - - 55 - 20 - - - - - - previewToolButton - decoToolButton - horizontalSpacer_2 - horizontalSpacer - simpleGrapgToolButton - - - - - - - 0 - 0 - - - - - - - QTabWidget::South - - - 2 - - - - Preview - - - - 0 - - - 0 - - - 0 - - - 5 - - - 0 - - - - - - 0 - 0 - - - - - Anonymous Pro - 13 - - - - QFrame::NoFrame - - - QFrame::Plain - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - QTextEdit::NoWrap - - - Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse - - - - - - - - Decomp - - - - 0 - - - 0 - - - 0 - - - 5 - - - 0 - - - - - - 0 - 0 - - - - - Anonymous Pro - 13 - - - - QFrame::NoFrame - - - QFrame::Plain - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - false - - - QPlainTextEdit::NoWrap - - - - - - Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse - - - - - - - - Graph - - - - 0 - - - 0 - - - 0 - - - 5 - - - 0 - - - - - - 0 - 0 - - - - - Anonymous Pro - 12 - - - - QToolTip { - background-color: #444; - border: 3px solid #444; - color: rgb(232, 232, 232); - font: 11pt "Monaco"; -} - - - - about:blank - - - - - - - - - - - - - - - - - Hexdump - - - - 0 - - - 0 - - - 0 - - - 5 - - - 0 - - - - - 5 - - - 0 - - - - - 0 - - - - - - 0 - 0 - - - - - Anonymous Pro - 13 - - - - false - - - - - - QFrame::NoFrame - - - 0 - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - QAbstractScrollArea::AdjustToContents - - - - - - true - - - QTextEdit::NoWrap - - - true - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Anonymous Pro'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Monaco'; font-size:12pt;"><br /></p></body></html> - - - false - - - false - - - Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse - - - - - - - - - - - 0 - 0 - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - - Anonymous Pro - 13 - - - - false - - - QFrame::NoFrame - - - 0 - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - QAbstractScrollArea::AdjustToContents - - - QTextEdit::NoWrap - - - true - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Anonymous Pro'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Monaco'; font-size:12pt;"><br /></p></body></html> - - - false - - - Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse - - - - - - - - - - - 0 - 0 - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - - Anonymous Pro - 13 - - - - false - - - QFrame::NoFrame - - - 0 - - - Qt::ScrollBarAlwaysOn - - - Qt::ScrollBarAlwaysOff - - - QAbstractScrollArea::AdjustToContents - - - QTextEdit::NoWrap - - - true - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Anonymous Pro'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Monaco'; font-size:12pt;"><br /></p></body></html> - - - false - - - Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse - - - - - - - - - - - - Graph - - - - 0 - - - 0 - - - 0 - - - 0 - - - - - Qt::DefaultContextMenu - - - - about:blank - - - - 1.000000000000000 - - - - - - - - - - - - 0 - 0 - - - - - 257 - 16777215 - - - - QTabWidget::pane { /* The tab widget frame */ -border-top: 0px; -} - - - QTabWidget::South - - - 0 - - - - Disas - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - 0 - 0 - - - - QFrame::NoFrame - - - QFrame::Plain - - - 0 - - - Qt::ScrollBarAlwaysOff - - - QAbstractScrollArea::AdjustToContents - - - true - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - 0 - 0 - 257 - 885 - - - - - 0 - 0 - - - - - 0 - - - 0 - - - 0 - - - 0 - - - - - 5 - - - 2 - - - 5 - - - - - 5 - - - 2 - - - 2 - - - - - - 0 - 0 - - - - - 75 - true - - - - Function: - - - - - - - - - - - - - false - - - true - - - - - - - - - 5 - - - 0 - - - 5 - - - - - ... - - - - 8 - 8 - - - - true - - - true - - - Qt::DownArrow - - - - - - - - 0 - 0 - - - - <html><head/><body><p><span style=" font-weight:600;">Information</span></p></body></html> - - - - - - - 0 - - - - - Radar graph - - - QToolButton { /* all types of tool button */ - border: 5px solid #333; - border-left: 10px solid #333; - border-right: 10px solid #333; - border-radius: 0px; - background-color: #333; - } - -QToolButton:hover { - border: 5px solid #444; - border-left: 10px solid #444; - border-right: 10px solid #444; - border-radius: 0px; - background-color: #444; - } - -QToolButton:checked { - border: 5px solid #2180a9; - border-left: 10px solid #2180a9; - border-right: 10px solid #2180a9; - border-radius: 0px; - background-color: #2180a9; -} - -QToolTip { - background-color: #444; - border: 3px solid #444; - color: rgb(232, 232, 232); -} - - - - - - - :/new/prefix1/img/icons/radar.png - :/new/prefix1/img/icons/radar_white.png:/new/prefix1/img/icons/radar.png - - - - 8 - 8 - - - - true - - - true - - - buttonGroup_2 - - - - - - - Polar graph - - - QToolButton { /* all types of tool button */ - border: 5px solid #333; - border-left: 10px solid #333; - border-right: 10px solid #333; - border-radius: 0px; - background-color: #333; - } - -QToolButton:hover { - border: 5px solid #444; - border-left: 10px solid #444; - border-right: 10px solid #444; - border-radius: 0px; - background-color: #444; - } - -QToolButton:checked { - border: 5px solid #2180a9; - border-left: 10px solid #2180a9; - border-right: 10px solid #2180a9; - border-radius: 0px; - background-color: #2180a9; -} - -QToolTip { - background-color: #444; - border: 3px solid #444; - color: rgb(232, 232, 232); -} - - - - - - - :/new/prefix1/img/icons/polar.png - :/new/prefix1/img/icons/polar_white.png:/new/prefix1/img/icons/polar.png - - - - 8 - 8 - - - - true - - - false - - - buttonGroup_2 - - - - - - - - - - - - 0 - 0 - - - - - 0 - 250 - - - - - 250 - 250 - - - - 1 - - - - Tab 1 - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - 0 - 0 - - - - - 245 - 245 - - - - - 250 - 250 - - - - - qrc:/html/fcn_graph.html - - - - - - - - - Tab 2 - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - 0 - 0 - - - - - 245 - 245 - - - - - 250 - 250 - - - - - qrc:/html/fcn_radar.html - - - - - - - - - - - - 5 - - - 0 - - - - - - - - - 8 - 8 - - - - true - - - true - - - Qt::DownArrow - - - - - - - - 75 - true - - - - true - - - Offset info: - - - - - - - - - - 0 - 0 - - - - - 0 - 175 - - - - - 11 - - - - QFrame::NoFrame - - - Qt::ScrollBarAlwaysOff - - - 10 - - - true - - - - Info - - - - - Value - - - - - - - - - - ... - - - - 8 - 8 - - - - true - - - true - - - Qt::DownArrow - - - - - - - - 75 - true - - - - true - - - Opcode description: - - - - - - - - - - 0 - 0 - - - - background-color: rgb(255, 255, 255); -color: rgb(0, 0, 0); - - - QFrame::NoFrame - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - false - - - true - - - - - - - 5 - - - 0 - - - 0 - - - - - - - - - 8 - 8 - - - - true - - - true - - - Qt::DownArrow - - - - - - - <b>Xrefs from:</b> - - - - - - - - - - 0 - 0 - - - - - 0 - 100 - - - - - 11 - - - - QTreeWidget::item -{ - padding-left:10px; - padding-top: 1px; - padding-bottom: 1px; - border-left: 10px; -} - -QTreeWidget::item:hover -{ - background: rgb(242, 246, 248); - color: black; -} - -QTreeWidget::item:selected -{ - background: gray; - color: white; -} - -QToolTip { - background-color: #444; - border: 3px solid #444; - color: rgb(232, 232, 232); - font: 12pt "Monaco"; -} - - - QFrame::NoFrame - - - Qt::ScrollBarAlwaysOff - - - QAbstractItemView::ScrollPerPixel - - - 0 - - - - Address - - - - - Instruction - - - - - - - - 5 - - - 0 - - - - - ... - - - - 8 - 8 - - - - true - - - true - - - Qt::DownArrow - - - - - - - <b>Xrefs To:</b> - - - - - - - - - - 0 - 0 - - - - - 0 - 100 - - - - - 11 - - - - QTreeWidget::item -{ - padding-left:10px; - padding-top: 1px; - padding-bottom: 1px; - border-left: 10px; -} - -QTreeWidget::item:hover -{ - background: rgb(242, 246, 248); - color: black; -} - -QTreeWidget::item:selected -{ - background: gray; - color: white; -} - -QToolTip { - background-color: #444; - border: 3px solid #444; - color: rgb(232, 232, 232); - font: 12pt "Monaco"; -} - - - QFrame::NoFrame - - - Qt::ScrollBarAlwaysOff - - - QAbstractItemView::ScrollPerPixel - - - 0 - - - - Address - - - - - Instruction - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - - - - - Hex - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - 0 - 0 - - - - QTabWidget::North - - - 0 - - - true - - - false - - - - Parsing - - - - 0 - - - 0 - - - 0 - - - 0 - - - - - 5 - - - 0 - - - - - 0 - - - - - - 0 - 0 - - - - - Dissasembly - - - - - String - - - - - Assembler - - - - - C byte array - - - - - C dword array - - - - - C qword array - - - - - Python - - - - - JSON - - - - - Javascript - - - - - - - - - 0 - 0 - - - - Endian - - - - - - - QComboBox::AdjustToMinimumContentsLength - - - - Little - - - - - Big - - - - - - - - - - - 0 - 0 - - - - - 0 - 0 - - - - QFrame::NoFrame - - - QFrame::Plain - - - 0 - - - - QLayout::SetMinimumSize - - - 5 - - - 0 - - - 5 - - - 5 - - - - - - 0 - 0 - - - - Arch - - - - - - - - 0 - 0 - - - - QComboBox::AdjustToMinimumContentsLength - - - false - - - - - - - - 0 - 0 - - - - Bits - - - - - - - QComboBox::AdjustToMinimumContentsLength - - - - 16 - - - - - 32 - - - - - 64 - - - - - - - - - - - - 0 - 0 - - - - - Anonymous Pro - 13 - - - - QFrame::NoFrame - - - 0 - - - ;; Select some bytes on the left -;; to see them disassembled - - - - - - - - - - Information - - - - 6 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - 75 - true - - - - Bytes info - - - - - - - QFormLayout::ExpandingFieldsGrow - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter - - - Qt::AlignHCenter|Qt::AlignTop - - - 5 - - - 6 - - - 5 - - - 5 - - - - - - 0 - 0 - - - - MD5: - - - - - - - SHA1: - - - - - - - Entropy: - - - - - - - - 0 - 0 - - - - false - - - true - - - - - - - 5 - - - - - - 0 - 0 - - - - false - - - true - - - - - - - Copy MD5 - - - QToolButton { /* all types of tool button */ - border: 0px solid rgb(255, 255, 255); - border-radius: 6px; - border-left: 5px solid rgb(255, 255, 255); - border-right: 5px solid rgb(255, 255, 255); - margin-bottom: 1px; - margin-top: 1px; - background-color: rgb(255, 255, 255); - image: url(:/new/prefix1/img/icons/transfer.png); -} - -QToolButton:hover { - - border: 0px solid #2180a9; - border-radius: 6px; - border-left: 5px solid #2180a9; - border-right: 5px solid #2180a9; - margin-bottom: 1px; - margin-top: 1px; - background-color: #2180a9; - image: url(:/new/prefix1/img/icons/transfer_white.png); -} - -QToolButton:pressed { - border: 0px solid rgb(255, 255, 255); - border-radius: 6px; - border-left: 5px solid rgb(255, 255, 255); - border-right: 5px solid rgb(255, 255, 255); - margin-bottom: 1px; - margin-top: 1px; - background-color: rgb(255, 255, 255); - image: url(:/new/prefix1/img/icons/transfer.png); -} - -QToolTip { - background-color: #444; - border: 3px solid #444; - color: rgb(232, 232, 232); -} - - - - - - - - - - - - 5 - - - - - - 0 - 0 - - - - false - - - true - - - - - - - Copy SHA1 - - - QToolButton { /* all types of tool button */ - border: 0px solid rgb(255, 255, 255); - border-radius: 6px; - border-left: 5px solid rgb(255, 255, 255); - border-right: 5px solid rgb(255, 255, 255); - margin-bottom: 1px; - margin-top: 1px; - background-color: rgb(255, 255, 255); - image: url(:/new/prefix1/img/icons/transfer.png); -} - -QToolButton:hover { - - border: 0px solid #2180a9; - border-radius: 6px; - border-left: 5px solid #2180a9; - border-right: 5px solid #2180a9; - margin-bottom: 1px; - margin-top: 1px; - background-color: #2180a9; - image: url(:/new/prefix1/img/icons/transfer_white.png); -} - -QToolButton:pressed { - border: 0px solid rgb(255, 255, 255); - border-radius: 6px; - border-left: 5px solid rgb(255, 255, 255); - border-right: 5px solid rgb(255, 255, 255); - margin-bottom: 1px; - margin-top: 1px; - background-color: rgb(255, 255, 255); - image: url(:/new/prefix1/img/icons/transfer.png); -} - -QToolTip { - background-color: #444; - border: 3px solid #444; - color: rgb(232, 232, 232); -} - - - - - - - - - - - - - - Qt::Horizontal - - - - - - - 0 - - - - - <b>Histogram</b> - - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - - - Graph - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - 0 - 0 - - - - QFrame::NoFrame - - - 0 - - - false - - - true - - - - Basic blocks - - - - - fcn.08040000 - - - - 0x08048e10 - - - - - 0x08048e50 - - - - - 0x080583FF - - - - - - - - - - - - - - Change font - - - Change font - - - - - Disasm side panel - - - Disasm side panel - - - - - Hexdump side panel - - - Hexdump side panel - - - - - Graph side panel - - - Graph side panel - - - - - Send to notepad - - - Send to notepad - - - - - Add comment - - - Add comment - - - - - Rename - - - Rename - - - - - Undefine - - - Undefine - - - - - Show/Hide bytes - - - Show/Hide bytes - - - - - Switch case - - - Switch case - - - - - Syntax ATT/Intel - - - Syntax ATT/Intel - - - - - Copy all - - - Copy all - - - - - Copy bytes - - - Copy bytes - - - - - Copy disasm - - - Copy disasm - - - - - Copy Hexpair - - - Copy Hexpair - - - - - Copy ASCII - - - Copy ASCII - - - - - Copy Text - - - Copy Text - - - - - 1 - - - 1 - - - - - 2 - - - 2 - - - - - 4 - - - 4 - - - - - 8 - - - 8 - - - - - 16 - - - 16 - - - - - 32 - - - 32 - - - - - 64 - - - 64 - - - - - Edit - - - Edit - - - - - Paste - - - Paste - - - - - Insert Hex - - - Insert Hex - - - - - Insert String - - - Insert String - - - - - XRefs - - - XRefs - - - - - Separate bytes - - - Separate bytes with space - - - - - Right align bytes - - - Right align bytes - - - - - Separate disasm calls - - - Separate disasm calls - - - - - Show stack pointer - - - Show stack pointer - - - - - - QWebEngineView - QWidget -
QtWebEngineWidgets/QWebEngineView
-
-
- - - - - - - - - -
diff --git a/src/widgets/memwidget/memorywidget.cpp b/src/widgets/memwidget/memorywidget.cpp index e7fde4f6..08871dca 100644 --- a/src/widgets/memwidget/memorywidget.cpp +++ b/src/widgets/memwidget/memorywidget.cpp @@ -11,16 +11,11 @@ #include #include #include +#include #include #include #include -#if defined(USE_WEBENGINE) - #include -#else - #include -#endif - MemoryWidget::MemoryWidget(MainWindow *main) : QDockWidget(main), ui(new Ui::MemoryWidget) @@ -71,10 +66,6 @@ MemoryWidget::MemoryWidget(MainWindow *main) : graph_bar->setVisible(false); // Hide graph webview scrollbars - -#if defined(USE_WEBENGINE) - ui->graphWebView->page()->runJavaScript("document.body.style.overflow='hidden';"); -#else ui->graphWebView->page()->mainFrame()->setScrollBarPolicy(Qt::Vertical, Qt::ScrollBarAlwaysOff); ui->graphWebView->page()->mainFrame()->setScrollBarPolicy(Qt::Horizontal, Qt::ScrollBarAlwaysOff); @@ -85,7 +76,6 @@ MemoryWidget::MemoryWidget(MainWindow *main) : // Debug console QWebSettings::globalSettings()->setAttribute(QWebSettings::DeveloperExtrasEnabled, true); -#endif // Add margin to function name line edit ui->fcnNameEdit->setTextMargins(5, 0, 0, 0); @@ -190,11 +180,7 @@ MemoryWidget::MemoryWidget(MainWindow *main) : connect(this->disasTextEdit->verticalScrollBar(), SIGNAL(valueChanged(int)), this, SLOT(disasmScrolled())); connect(this->hexASCIIText->verticalScrollBar(), SIGNAL(valueChanged(int)), this, SLOT(hexScrolled())); -#if defined(USE_WEBENGINE) - connect(ui->graphWebView->page(), SIGNAL(loadFinished(bool)), this, SLOT(frameLoadFinished(bool))); -#else connect(ui->graphWebView->page()->mainFrame(), SIGNAL(loadFinished(bool)), this, SLOT(frameLoadFinished(bool))); -#endif } /* @@ -1421,11 +1407,7 @@ void MemoryWidget::create_graph(QString off) { ui->graphWebView->load(QUrl("qrc:/graph/html/graph/index.html#" + off)); QString port = this->main->core->config("http.port"); -#if defined(USE_WEBENGINE) - ui->graphWebView->page()->runJavaScript(QString("r2.root=\"http://localhost:" + port + "\"")); -#else ui->graphWebView->page()->mainFrame()->evaluateJavaScript(QString("r2.root=\"http://localhost:" + port + "\"")); -#endif } QString MemoryWidget::normalize_addr(QString addr) { @@ -1770,11 +1752,7 @@ void MemoryWidget::frameLoadFinished(bool ok) { QSettings settings; if (settings.value("dark").toBool()) { QString js = "r2ui.graph_panel.render('dark');"; -#if defined(USE_WEBENGINE) - ui->graphWebView->page()->runJavaScript(js, [](const QVariant &result){ qDebug() << result; }); -#else - qDebug() << ui->graphWebView->page()->mainFrame()->evaluateJavaScript(js); -#endif + ui->graphWebView->page()->mainFrame()->evaluateJavaScript(js); } } } diff --git a/src/widgets/memwidget/memorywidget.h b/src/widgets/memwidget/memorywidget.h index 1e39b079..31d3101d 100644 --- a/src/widgets/memwidget/memorywidget.h +++ b/src/widgets/memwidget/memorywidget.h @@ -11,16 +11,11 @@ #include #include #include +#include #include #include #include -#if defined(USE_WEBENGINE) - #include -#else - #include -#endif - class MainWindow; namespace Ui { @@ -44,13 +39,8 @@ public: QTreeWidget *xrefToTreeWidget_2; QTreeWidget *xreFromTreeWidget_2; QTabWidget *memTabWidget; -#if defined(USE_WEBENGINE) - QWebEngineView *graphWebView; - QWebEngineView *histoWebView; -#else QWebView *graphWebView; QWebView *histoWebView; -#endif Highlighter *highlighter; Highlighter *highlighter_5;