Commit Graph

117 Commits

Author SHA1 Message Date
Anton Kochkov
3d30892a30
Add Global Vars widget, dialog, context menus (#3203)
* Add global variables support

- Add Globals widget
- Add global variable add/modify dialog
- Add "Add at" context submenu in Disassembly widget

Co-authored-by: Giovanni <561184+wargio@users.noreply.github.com>

---------

Co-authored-by: Giovanni <561184+wargio@users.noreply.github.com>
2023-08-04 10:17:35 +08:00
Giovanni
cf14fd1006
Add Tools > BaseFind + command line options (#3198)
* Add Tools > BaseFind
* Rewritten how cutter parses and stores the initial options
* Update docs and fixed comments
* Add missing endianness option
2023-06-25 11:42:23 +08:00
Anton Kochkov
aa40f69458 Specify PySide version in bindings template 2023-05-20 13:05:43 +08:00
Anton Kochkov
553a8eef5c Specify include paths for Shiboken 2023-05-20 13:05:43 +08:00
Anton Kochkov
48c8e0c44d Allow building Python bindings with Qt6 2023-05-20 13:05:43 +08:00
Anton Kochkov
9bfe0c4e1d
Use Ubuntu 18.04 docker image (#3180)
Co-authored-by: wargio <wargio@libero.it>
2023-05-15 20:37:45 +08:00
Florian Märkl
1f133741ab
Make ClassesWidget a ListDockWidget (#3152)
Adds Quick Filter and generic address-based context menu entries to the
existing ClassesWidget. The original ClassesWidget.ui is not used
anymore as the layout is provided by ListDockWidget and only adjusted.
The AddressableItemContextMenu may now also optionally be shown when
there no currently selected item by using
setShowItemContextMenuWithoutAddress(). This is used e.g. to display the
"Create Class" option when nothing is present in the list.

Fixes #2237

Co-authored-by: Tristan Crawford <tristanthtcrawford@gmail.com>
2023-03-30 19:33:31 +02:00
Florian Märkl
4e0e0000e1 Remove Breakpad Crash Reporting
Crash dumps generated with breakpad were not made use of to an extent
that would justify the extra maintenance overhead that it comes with. As
Windows builds have recently been broken by it, now is a good time to
retire it.
2023-01-13 14:53:27 +01:00
Duncan Ogilvie
0624cd1d19
Show a nice folder structure in Visual Studio (#2890) 2022-10-23 11:40:26 +00:00
karliss
41c4857ed9
Introduce some helpers to deal with rizin C API more cleanly. (#3020) 2022-08-13 23:12:57 +03:00
Florian Märkl
db0d4d85a6
Use CutterJson for Signatures and rewrite JsonModel (#2997)
This fixes a double-free in getSignatureInfo() when the string was
already freed by the intermediate CutterJson. But actually just using
this CutterJson makes more sense than the string anyway, so let's do
that.
The old JsonModel rebuilt the entire structure, defeating the main
purpose of a custom model in comparison to the existing QTreeWidget.
And since we are holding the json structures ourselves anyway, such a
custom model does not have many benefits anyway.
2022-07-09 16:26:35 +02:00
bartoszek
26e4f4acb8
Add missing Rizin headers in python bindings (#2943) 2022-05-30 13:04:34 +02:00
Florian Märkl
62d75c9391
Extend cmake config files with deps, version, etc. (#2916)
This improves how the installed CutterConfig.cmake can be used for
native plugin development:
* Transitive dependencies are resolved automatically
* Version file is included
* Cutter_USER_PLUGINDIR is set to a path that plugins can use as a
  default install destination

src/plugins/sample-cpp/CMakeLists.txt is an example for how to use it.
Rizin was also updated to prevent an error with multiple
`find_package()` calls.
2022-03-31 12:49:37 +02:00
Akihiko Odaki
d34349b49f
Use rizin instead of Qt to parse JSON (#2902)
Qt truncates integers to 52-bit, corrupting e.g. memory addresses. Use
rizin's JSON parser, which can parse integers whose size is up to 64
bits.
2022-03-14 09:04:49 +01:00
Giovanni
46d29c1e85
Add signature widget for flirts (#2881)
* Added flirt view and removed zignature one
* Added menu for apply signature from file and create new sig/pat files
* Updated rizin to dev branch
2022-01-21 09:39:56 +01:00
Petros S
d85383fcfc
Support for previewing in the Graph widget (#2797)
Common functionality has been moved to the DisassemblyPreview namespace.
2021-12-05 08:53:45 +00:00
Florian Märkl
3ba7363f99
Remove Type Link features in light of global variables (#2775) 2021-09-23 17:57:51 +02:00
Anton Kochkov
5595193b70
Minor renames of analysis-related things (#2761) 2021-09-15 20:48:02 +02:00
GustavoLCR
f59797fb3d
Fix #2657 - Set cutter executable as WINDOWS subsystem (#2717) 2021-08-06 11:56:50 +03:00
Pulak Malhotra
60343fa8b5
Heap widget wrapup (#2716) 2021-07-16 13:48:10 +00:00
Pulak Malhotra
2d7b6d15c0
Heap bins view (#2710)
* Added bins dialog box

* Bins dialog box working

* Add size column

* Add newline

* Make code more readable

* Make headers better

* Add tooltip for bins widget

* Added easy access to detailed chunk info from bins dialog

* Experimenting with CutterGraphView

* Added Basic Graph View for bins using `simpleTextgraphView`

* Added Bins button

* Bug fix

* Add bin message to the last chunk in the list

* Add addresses and addressablecontextmenu to graphs

* Add support multi line graph blocks

* Fix indent

* Dont clear dialog box

* Add `detailed chunk info` in Graphs context menu

* Minor changes

* Update Rizin
2021-07-02 10:19:27 +00:00
Pulak Malhotra
771fa6102c
Initial heap dock widget with glibc support (#2705) 2021-06-27 20:21:06 +00:00
Kārlis Seņko
da17c6e411 Build system compatiblity with QT6.
Qt6 moved some of the functionality to separate modules.
2021-04-24 13:13:36 +03:00
karliss
4328f5df5a
Adjust prefix handling due to rizin portable mode changes. (#2671) 2021-04-20 06:34:52 +03:00
karliss
0553d3ffdb
Add JSDec packaging for macos. (#2580) 2021-02-18 16:36:27 +02:00
Florian Märkl
b0cef7e634 Change Executable to Lowercase and use re.rizin.cutter everywhere 2021-01-25 22:09:19 +01:00
Anton Kochkov
88478ffb30
New JSDec home (#2563)
Switch from r2dec to jsdec
2021-01-16 11:48:31 +01:00
karliss
18e98e7868
Don't compile files for features that are disabled. (#2561)
Don't wrap whole cpp file in ifdef, it confuses clang-format.
2021-01-11 23:49:54 +02:00
karliss
562979bcff
Remove qmake (#2546)
* Remove qmake project and move some variables directly to CMake project
* Remove meson and update docs.
* Add instructions for basic macOS build.
2021-01-10 13:07:39 +02:00
karliss
29cbd06ab2
Run macos packaging in GHA. (#2529)
* Enable running of macOS packaging in GHA, most of the work done in dedbabde56
* Cleanup breakpad handling
* Have single version of main executable in folder expected by macOS and most tools instead of executable+symlink+shell script
* Handle Breakpad library lookup in more CMake way using FindBreakpad just like it's done on other platforms and packages
* Refactor error handling in some of the shell scripts to use `set -e` instead of `|| exit 1` for each command.
* Fix DMG background setup
2021-01-02 19:57:29 +02:00
Anton Kochkov
70cef2c1af
More R2/Radare -> Rizin renames (#2516) 2020-12-16 11:59:23 +01:00
Florian Märkl
dedbabde56
Add macOS Packaging in CMake (#7) 2020-12-07 09:19:18 +01:00
Florian Märkl
8c35ebb837
Restructure CMake files to start in the root of the tree (#6) 2020-12-07 09:19:16 +01:00
Florian Märkl
78dcba4c26
More Rizin Updating in CMake and use it in AppVeyor (#5) 2020-12-07 09:17:58 +01:00
Florian Märkl
2b8ac6ecf7
Port to Rizin 2020-12-07 09:17:56 +01:00
karliss
f9bde4a2ff
Start making adjustment for qt6 compatibility. (#2463)
* Introduce cmake option for using Qt6, build doesn't work fully yet.
* Recursive mutex, QActionGroup, QComboBox::AdjustToMinimumContentsLength
* Cleanup dock locking
2020-11-30 09:42:13 +02:00
karliss
d971f30d25
Set executable icon in windows CMake build. (#2443) 2020-10-10 13:52:56 +03:00
karliss
c49cbc9f01
Add cmake script for packaging r2dec on windows. (#2425) 2020-10-03 13:50:57 +03:00
karliss
ad66718f37
Add CMake code for packaging r2ghidra on windows. (#2422) 2020-09-06 11:52:13 +03:00
karliss
1966c76ba7
Update windows CMake breakpad code. (#2421) 2020-09-05 11:25:34 +03:00
karliss
6fc902894d
CMake windows python packaging (#2406)
* First version of cpack scripts
* Fix python binding building using CMake on windows
* Package python and pyside in the cpack package
* Run windeployqt as part of packaging to include the Qt dlls and vcruntime installer
2020-08-30 23:23:41 +03:00
karliss
7c9c7e6fe4
Add symbol exports. (#2345)
* Add symbol exports required for external native plugins to work on Windows
* Make Linux build behave more like Windows so that missing export
annotations can be more easily detected.
2020-08-01 17:14:30 +03:00
karliss
cd42adc832
Use cmake for linux DEPLOY build. (#2223)
* Add cmake script for building and installing translations.
* Improve APPIMAGE related path handling.
2020-06-17 12:35:26 +03:00
karliss
80c2128039
Change include order to prevent warning from GNUInstallDirs (#2132)
CMake >= 3.17 warns that GNUInstallDirs might not work correctly if
included before some target details are known.
closes #2122
2020-04-08 16:45:13 +03:00
karliss
55d4ee3ce4
By default search r2 in /usr/local used by sys/install.sh. (#2128) 2020-04-07 12:39:15 +03:00
karliss
c4d7d649f1
Add installing to CMake (#2084) 2020-03-15 14:43:42 +01:00
yossizap
eb88c8b21a
Add AddressableItemContextMenu bindings (#2054) 2020-02-06 18:32:15 +01:00
karliss
55017f6ba0 Replace hardcoded system plugin directories with list from Qt. (#1814) 2019-12-12 08:35:25 +01:00
karliss
8ce4700223
Specify shiboken macOS header path in travis.yml. (#1870) 2019-11-04 18:41:38 +02:00
xarkes
afd63e97cd [skip ci] Improved building instructions (#1843) 2019-10-17 08:46:51 +03:00