Commit Graph

1344 Commits

Author SHA1 Message Date
a1ext
1422013d99 Fix crash because of mixing debug and release CRT. (#1361)
Memory allocated in r2-side has to be released with `r_free`
2019-03-23 07:15:03 +02:00
Florian Märkl
c84546e828
Extend FindPySide2.cmake and FindShiboken2.cmake for current versions (#1358) 2019-03-22 21:54:51 +01:00
Vanellope
7fd815bd40 Fixed a bug related to reset_settings (#1349) 2019-03-21 21:14:52 +01:00
Vanellope
72e8cd664e reset settings should reset layout as well (#1334) 2019-03-19 20:15:38 +01:00
Vanellope
6f1309452a revert shitty fix (#1335) 2019-03-19 20:15:14 +01:00
Florian Märkl
9f582b3e03 Use QVersionNumber for Version Comparison 2019-03-18 21:42:46 +01:00
Florian Märkl
a3e4daecca Release Bump 1.8.0 2019-03-18 20:22:24 +01:00
Florian Märkl
dd934443a7 Fix changing Variable Name in EditVariablesDialog 2019-03-18 20:14:28 +01:00
Vanellope
96f6e062fc Vane11ope/fix layout (#1308)
Refactoring and Fixes for the default layout.
2019-03-18 08:44:14 +02:00
Vanellope
f23ff9d8c5 Fix a bug of Overview perf (#1324) 2019-03-18 08:34:30 +02:00
Vanellope
6f324496be Force overview to update itself when the settings are changed (#1314) 2019-03-17 13:50:36 +01:00
Florian Märkl
aa591e1a47 Add Plugins Section to Preferences 2019-03-16 20:24:28 +01:00
ncyellow
dffb9dccb9 append layout to OpenFileDialog, so the dialog more flexible (#1293)
* append layout to OpenFileDialog, so the dialog more flexible

* "Select file" button alignement.g

* new variant layout for OpenFileDialog in 3 column
2019-03-16 14:39:15 +02:00
Florian Märkl
8061120657
Use cutter-deps on Windows (#1286)
Also enable python plugins for Windows builds
2019-03-16 11:35:31 +01:00
xarkes
46bb07d725 Fixed the way headers are included 2019-03-15 16:19:27 +01:00
xarkes
3b87389d07
Removed stackptr because the result is meaningless (#1285) 2019-03-14 11:03:15 +01:00
Vanellope
ec62045336 Fix a font issue in the Graph widget (#1287) 2019-03-14 10:42:42 +01:00
Vanellope
0be50ac36f Overview optimization (#1262)
* Overview optimization
* Better cache algorithm
* Fix a bug of the multiple graphs
2019-03-12 09:37:10 +02:00
Florian Märkl
31a832c34d Add PluginManager::getPluginsDirectory() 2019-03-11 11:55:02 +01:00
Florian Märkl
193fef46df Fix some warnings 2019-03-11 11:38:53 +01:00
Florian Märkl
c3f1636aee Fix NewFileDialog positioning on macOS 2019-03-11 10:42:22 +01:00
Florian Märkl
7a77eeee06 Fix NewFileDialog leaking MainWindow
This also fixes segfaults on quitting when using plugins
2019-03-11 10:42:22 +01:00
Florian Märkl
48260cc534 Implement finding PySide2 and Shiboken2 without config 2019-03-11 10:42:22 +01:00
Florian Märkl
defc9ead43 Add basic find modules for PySide2 and Shiboken2 2019-03-11 10:42:22 +01:00
Itay Cohen
1af9195e21
Replace red syntax highlighting with blueish color (#1261)
* remove bolding
* change highlight color from red to blueish
2019-03-10 15:09:02 +02:00
Itay Cohen
8b7d795a15
Add configurable graph overview node color (#1259) 2019-03-10 09:53:06 +02:00
optizone
3fed97ad86 Auto update check (#1235)
* init commit

* bug fix

* call slot of null object bug fix

* delete extra disconnect() func

* change api and add doc

* run astyle

* some improvements

* memory leak fix

* add check on start checkbox

* add checkbox to about page

* serve version check reply using lambda instead of slot

* fix grammar mistakes

* more docs

* save some lines

* change button text

* astyle

* change message text

* dont use QApplication pointer as a parent for network manager

* proper deletion of QNetworkReply*

* VersionChecker -> UpdateWorker

* windows dll hack

* after rebase fix

* some improvements

* better determination of arch

* more docs

* improvements

* add UpdateWorker::showUpdateDialog

* remove odd condition

* more improvements

* fix windows bug

* make dialog non-blocking

* change text in download progress dialog

* bug fix

* remove debug conditions

* change docs format
2019-03-09 14:11:39 +01:00
Florian Märkl
d4a6b031ff Use only cutter module in sample plugin 2019-03-09 14:07:20 +01:00
Florian Märkl
7315f8e102 Use template in bindings.xml 2019-03-09 14:07:20 +01:00
Paul I
7554cb5461 Disable aan (#1253) 2019-03-09 09:09:37 +02:00
Florian Märkl
732f2d8cde
Use cutter-deps on macOS (#1238)
* Update deps scripts for macOS

* Update deps

* Update appbundle_embed_python.sh

* Use cutter-deps for macOS

* Remove qt from Brewfile

* Fix .travis.yml

* Disable Homebrew update

* Fix llvm for macOS

* Fix regex in update_deps.py

* Fix PYTHON_FRAMEWORK_DIR

* Some debug output in travis

* Enable Python Bindings for cmake on macOS

* QMake debug

* Update deps

* Hopefully fix pkg-config

* QMake hack for shiboken2 and pyside2

* Deploy on deps-test

* Update deps

* Fix call to appbundle_embed_python.sh

* Update deps

* Fix Python for cmake on macOS

* Update deps

* Fix appbundle_embed_python.sh

* Copy pyside libs in appbundle_embed_python.sh

* Fix includes for CMake on macOS

* Copy PySide2 and Shiboke2 libs to Frameworks dir

* Manually deploy QtDBus and QtPrintSupport

* Print plugins dir

* Fix appbundle_embed_python.sh

* Update deps

* Remove some debug output

* Use last release of linuxdeployqt
2019-03-09 00:01:24 +01:00
Vanellope
7ea1f0b281 Fix couple of issues regarding Graph Overview (#1228) 2019-03-08 19:57:57 +01:00
Vanellope
0dff413e17 Fix a bug in seek caused by Graph refactoring (#1250)
* Fixed a bug in seek
2019-03-08 19:24:59 +02:00
Itay Cohen
d46ff14a21
Start using "gui.navbar.seek" color instead of "gui.navbar.err" to show seek cursor (#1244)
* fix navbar to use seek

* honor navbar.seek

* honor navbar.seek in Sections widget

* fix typo
2019-03-07 07:26:26 +02:00
xarkes
003d0d3c26
Modified documentation format (#1240) 2019-03-06 21:30:39 +01:00
Gaurav Kumar Ghildiyal
687ef2d799 Added feature to link a type to an address (#1219)
* Added feature to link a type to an address
2019-03-04 23:45:17 +02:00
Vanellope
c78957b328 Better solution for the infinite loop (#1232) 2019-03-02 09:07:05 +01:00
Florian Märkl
8bfa653909
Use cutter-deps on Linux (#1217)
* Use cutter-deps for Linux

* Update CMakeLists.txt for newer PySide2

* Add llvm-config --libdir to LD_LIBRARY_PATH in Travis

* Update cutter-deps

* Fix Python Prefix for Deploy

* Update cutter-deps

* Install Jupyter in Travis

* Add update_deps.py and update

* Enable Python Bindings for qmake in Travis

* Use absolute path for src_list.py in qmake

* Use python directly for src_list.py in qmake

* Keep env for linuxdeployqt

* Embed PySide2 in AppImage

* Fix appimage_embed_python.sh
2019-02-28 14:56:54 +01:00
xarkes
711ed505dc
Updated links to the documentation (#1229)
* Updated links to the documentation
2019-02-28 11:21:21 +01:00
Florian Märkl
1f4339bed2
Fix Jupyter (#1223)
* Call PyErr_Print() in QtResImport()

* Fix Jupyter
2019-02-27 14:54:47 +01:00
Vanellope
2208d3c134 Fix an infinite loop bug (#1218) 2019-02-26 11:24:49 +00:00
Gaurav Kumar Ghildiyal
a10ca8f033 Add feature to apply structure offset and fix some issues in EditVariablesDialog (#1215)
* Fixed EditVariablesDialog

* Added feature to apply structure offset in disassembly and graph view
2019-02-24 17:25:38 +00:00
Vanellope
fa708143ac Overview does not disappear anymore when it is moved to the same dock as Graph (#1212)
* Overview does not disappear anymore when it is moved to same dock as Graph, Gray out Overview menu when Graph is not active
2019-02-24 07:15:40 +00:00
xarkes
6a77db67ff
Disabled Python building by default (#1214)
Many people do not have shibokken or jupyter or the
python libraries on their computer, so it's better
not to enable those by default.
2019-02-23 08:24:31 +01:00
xarkes
ab27e09b91 Splitted Cutter.h and moved everything in core (#1201)
Sometimes it is not necessary to include the whole Cutter.h file
Hence, it's been splitted so you can include only what you require
E.g. #include "core/CutterCommon.h" to have access to the common types
2019-02-22 17:50:45 +01:00
Florian Märkl
2d2b9c8a28
Change organizationName and use QSettings:IniFormat (#1213)
* Remove organizationName

* Use QSettings::IniFormat and migrate if possible

* Use RadareOrg as the organizationName
2019-02-22 14:38:02 +01:00
Florian Märkl
5313017c54 Fix Segfault when jupyter is not installed 2019-02-21 22:57:26 +01:00
ITAYC0HEN
3cdc6a5230 Add Plugins submenu 2019-02-21 22:57:26 +01:00
Florian Märkl
d1f5da9946 Init Python before RCore 2019-02-21 22:57:26 +01:00
xarkes
a93c5e225f Added a BasicBlock highlighting API 2019-02-21 22:57:26 +01:00
Florian Märkl
7caabf5350 Fix Python for CMake in Travis 2019-02-21 22:57:26 +01:00
Florian Märkl
acca40b978 Include and meson fixes
Fix QDir include in PythonManager

Fix cassert include

Fix assert include in PluginManager.cpp
2019-02-21 22:57:26 +01:00
Florian Märkl
70e7840e75 Temporarily disable Bindings in CI, QMake Fixes 2019-02-21 22:57:26 +01:00
Florian Märkl
f5fb9f364f Fix segfault when CutterCore is destructed 2019-02-21 22:57:26 +01:00
Florian Märkl
2b8a0df4cc Use correct shiboken executable in CMake 2019-02-21 22:57:26 +01:00
Florian Märkl
804bd5ef08 Build Python Bindings with meson 2019-02-21 22:57:26 +01:00
Florian Märkl
aaf88e85aa Fix CUTTER_ENABLE_PYTHON_BINDINGS in cmake 2019-02-21 22:57:26 +01:00
Florian Märkl
f945ebf9ae Add enable_python option to meson 2019-02-21 22:57:26 +01:00
Florian Märkl
2be8ec8456 Generate Bindings in QMake
Fix typesystem-paths
2019-02-21 22:57:26 +01:00
xarkes
436842222e Modified some APIs for more consistence
Correct null check after create_cutter_plugin()

Fix cutter.core()
2019-02-21 22:57:26 +01:00
Florian Märkl
18b40a8b90 Automatically determine Bindings cpp files
Enhance src_list.py
2019-02-21 22:57:26 +01:00
Florian Märkl
950f24eaf3 Fix build without Python 2019-02-21 22:57:26 +01:00
Florian Märkl
40274e4bf4 Kill CutterPythonPlugin and use Bindings instead
Simplify CutterPlugin Interface

Pull Python Plugin Metadata from class vars

Also kill cutter_plugin.py

Fix Python Plugin Module Loading
2019-02-21 22:57:26 +01:00
Florian Märkl
d544bbed77 Create Plugins dir automatically 2019-02-21 22:57:26 +01:00
Florian Märkl
ea6dea3cc1 Load Plugins from QStandardPaths::AppDataLocation 2019-02-21 22:57:26 +01:00
Florian Märkl
986041380c Add PluginManager 2019-02-21 22:57:26 +01:00
Florian Märkl
280e10d154 Subclass CutterDockWidget in Python Plugin
Refactor CutterPlugin::setupInterface() and fix C++ sample
2019-02-21 22:57:26 +01:00
Florian Märkl
23115d7b1c Generate Bindings for CutterCore in CMake
Refactor CMakeLists.txt for bindings

Fix for CUTTER_ENABLE_JUPYTER=OFF
2019-02-21 22:57:26 +01:00
Florian Märkl
1c98a1c42e Partially fix shutting down Python 2019-02-21 22:57:26 +01:00
xarkes
da3e1fad29 Cleaned a bit and added a widget example 2019-02-21 22:57:26 +01:00
Florian Märkl
74a201ecba Move everything Jupyter related out of PythonManager
Fix importing cutter in Python
2019-02-21 22:57:26 +01:00
Florian Märkl
b9c859bc0c Get Python Plugin Metadata 2019-02-21 22:57:26 +01:00
Florian Märkl
1f3315d020 Find MainWindow in Python
Return Pointer from setupInterface() in Python Plugin

Load plugins before creating MainWindow
2019-02-21 22:57:26 +01:00
Florian Märkl
7798021f03 Print Python Errors from setupPlugin() and setupInterface() 2019-02-21 22:57:26 +01:00
xarkes
73c40da3f9 PyDecref python plugin instance, Cleanup 2019-02-21 22:57:26 +01:00
xarkes
650823409d Test setupInterface 2019-02-21 22:57:26 +01:00
xarkes
9c2de3e23d Calling setupPlugin from python 2019-02-21 22:57:26 +01:00
xarkes
a1110ee2ac WIP Python plugin PoC 2019-02-21 22:57:26 +01:00
Gaurav Kumar Ghildiyal
a83791a3e0 Fix arch and bits in Hexdump Widget (#1209) 2019-02-20 21:16:56 +01:00
Itay Cohen
d1af0c7c69
Update SyntaxHighlighter.cpp (#1206) 2019-02-20 18:36:25 +00:00
Vanellope
4a9b6182f5 Fix a bug which causes segfault when adding another Graph (#1202) 2019-02-19 15:56:50 +00:00
Gaurav Kumar Ghildiyal
a8fbe72bf7 Show sizes of structs and unions (#1203)
Show sizes of structs and unions and update radare2 submodule for r_core_save_parsed_type()
2019-02-19 14:11:01 +00:00
Vanellope
cd96856959 Fixed a scaling issue of Graph (#1200)
* Fixed a scaling issue of Graph

* Thoroughly fixed for the scaling

* double click fixed
2019-02-17 13:31:00 +00:00
Vanellope
f8cebe0e30 Graph scrolling forever (#1195)
* Replace scroll algorithm with just using offset

* WIP

* Text is now shown properly on each node

* WIP

* Scaling well WIP

* Fix positioning for Graph

* Overview properly displays Rect WIP

* Rect in overview moves along with the mouse WIP

* Overview rect properly moves WIP

* mouse properly moves WIP

* in middle of fixing resizing WIP

* scaling issue WIP

* Properly zooms

* almost done

* Edge width fixed for the overview

* Fixed a small bug

* Clean up
2019-02-16 17:17:11 +00:00
Florian Märkl
9a02dd24a7 Fix FunctionsWidget Tooltip Colors 2019-02-15 18:39:47 +01:00
Florian Märkl
9f31fd40b4 Move HTML Disasm formatting to Cutter 2019-02-15 18:39:47 +01:00
Florian Märkl
355e726e4a Fix Meson Scripts Paths (#1193) 2019-02-13 20:38:02 +01:00
xarkes
2132b5cb09
Fixed a typo (#1192) 2019-02-13 15:35:38 +01:00
Itay Cohen
843185d594
disable "aan" from advanced options (#1190) 2019-02-13 08:07:08 +00:00
Adam Zambrzycki
ef2f8f6772 Fix graph header resizing (#1189)
* Fix graph header resizing

* Remove 'this'

* Fix formatting

* Add comment
2019-02-13 07:37:05 +00:00
Itay Cohen
b5a69357d6
Fix SDB Browser docking problem and rename the whole thing (#1188)
* Fix sdbBrowser docking and renaming

* Fix SdbBrowser docking and naming
2019-02-13 06:38:47 +00:00
Itay Cohen
bc974e432f Implement highlight in Types dialog (#1186) 2019-02-12 15:09:45 +01:00
Itay Cohen
281d4e95e0
fix progress bar alignment (#1185) 2019-02-12 13:43:19 +00:00
Gaurav Kumar Ghildiyal
2f804380fc Fixed memory leak and refactored code (#1181) 2019-02-11 14:54:02 +00:00
Gaurav Kumar Ghildiyal
c9ce15f6dd Added load, delete and export features in the Types Widget (#1158)
* Added export types feature in types widget

* Added load new types option

* Added delete types option

* Removed redundant files

* Fix for translation

* Added popups in TypesWidget and related dialogs

* Added addTypes() in CutterCore and changed code to use it.

* Update r2 submodule for r_parse_c_string()

* Added override keyword for overridden functions

* Added comments and removed popup question.

* Added comments and confirmation dialog for delete
2019-02-11 09:34:15 +00:00
xarkes
75ce42f1ef
Reordered menu items by alphabetical order (#1178) 2019-02-09 12:51:16 +01:00
Philip Nelson
49b27ba241 Added a checkbox in the preferences dialog for asm.indent (#1175)
* Added a checkbox in the preferences dialog for asm.indent

* Fixed styling

* Made description more accurate
2019-02-07 22:55:24 +00:00
Vanellope
1a132ecf83 Fix an wrong positioning of the rect of Overview (#1171)
* Fix an wrong positioning of the rect of Overview

* Fix commenting and a resizing issue
2019-02-07 20:39:37 +00:00
Itay Cohen
9778cdf2d6
set ayu default for dark interface (#1174) 2019-02-07 20:39:14 +00:00
Florian Märkl
3a80b111b3 Add Actions to Create/Rename/Delete Classes 2019-02-07 14:53:14 +01:00
Philip Nelson
277a0ada2f Adding #685 (Adding a report issue button) (#1165)
* Added GUI elements for automatically opening Github issues

* Made the UI button for reporting issues a little more concise

* Added URL opener, in debugging stages of getting relevant OS details

* Fixed the url to fill in the OS info and Cutter version parameters

* Removed some .orig files that astyle made and I pushed

* Made the title of the issue empty so the User has to enter it

* Removed extra new lines

* Removed my astyle silliness

* Report button will now give information about the file being analyzed.

* Fixed indentation

* Added meaningful names to variables, added a method to determine if certain items exist before accessing them. Also fixed some camelCasing issues :D

* URL declaration is now done once, fixed if/else formatting
2019-02-07 10:52:08 +00:00
Florian Märkl
bcb3a162f7
Use REvent for classes (#1169)
* React to Anal Class REvents

* Correctly react to specific Class Events

* Adapt to Class REvent changes

* Update r2 submodule for Class REvents
2019-02-07 11:42:53 +01:00
a1ext
d876c9deee
Fixed AboutDialog leaking (#1168) 2019-02-06 17:30:29 +03:00
Adam Zambrzycki
6ad7900a3f Improved big blocks rendering performance (#1166) 2019-02-06 14:42:03 +01:00
xarkes
5365027f7c
Fixed asm.xrefs checkbox in Asm Options (#1167) 2019-02-05 20:51:39 +01:00
Ankur Saini
99915c990a Prevent r2 injection when opening a file (#1125)
* Prevent r2 injection while opening a file

* Small changes

* Changed the title of messagebox

* Open file use r2 API

* Minor Changes

* Minor Changes
2019-02-05 19:35:54 +00:00
Adam Zambrzycki
3493eae194 Fix graph blocks rendering optimization (#1164) 2019-02-05 16:21:02 +01:00
a1ext
8c82449423 Force context menu to show shortcuts fix. Closes #1154 (#1163)
* Force context menu to show shortcuts fix. Closes #1154

* Mocking problem fixed
2019-02-05 09:46:39 +02:00
Vanellope
85a57f9e17 Proper fix for the infinite loop that had occurred to the Overview (#1156) 2019-02-03 08:54:28 +01:00
Florian Märkl
1ee1d7d948 Fix Seek to VTable and add some docs 2019-02-02 15:17:50 +01:00
Florian Märkl
dae04b8609 Rename Anal to Analysis in ClassesWidget 2019-02-02 15:17:50 +01:00
Florian Märkl
1864e7b95d Finish EditMethodDialog 2019-02-02 15:17:50 +01:00
Florian Märkl
7bdc28d07d Make EditMethodDialog Method Loading work 2019-02-02 15:17:50 +01:00
Florian Märkl
159d04e4c5 Re-enable Proxy Model for Classes Widget 2019-02-02 15:17:50 +01:00
Florian Märkl
2f0fd91137 Polish Classes Widget 2019-02-02 15:17:50 +01:00
Florian Märkl
c54f7df3cb Add Icons to ClassWidget 2019-02-02 15:17:50 +01:00
Florian Märkl
af20c35ab0 Show Anal Class Attributes 2019-02-02 15:17:50 +01:00
Florian Märkl
6087ab8016 Add Methods to fetch Anal class attrs 2019-02-02 15:17:50 +01:00
Florian Märkl
c7d582a893 Basic Display of Anal Classes in ClassesWidget
Fetch Anal Classes

Display vtable info in ClassesWidget

Add Context Menu to ClassesWidget

Show Base Classes in ClassesWidget

Add EditMethodDialog

Fix Anal Classes List

Set Anal as the default Classes Source

Display Anal Classes from SDB in ClassesWidget
2019-02-02 15:17:50 +01:00
Gaurav Kumar Ghildiyal
601339d86f Added some of the features mentioned in the Types Widget Project. (#1153)
* Added filter widget to types widget

* Added filter capibility in types widget

* Added comments and refactored some code

* Corrected some details
2019-02-01 18:11:50 +02:00
Vanellope
f5709830b9 Fix graph zoom for overview (#1152) 2019-01-31 13:14:15 +01:00
xarkes
60bb972cfd Added 'asm.xrefs' option in preferences dialog (#1150) 2019-01-30 10:40:17 +02:00
Gaurav Kumar Ghildiyal
339d1328c3 Added support for automatically saving and opening recent folder (#1149) 2019-01-29 18:37:09 +01:00
Gaurav Kumar Ghildiyal
57231192f4 Added dialog to show infinite progress-bar while running script (#1145)
* Added dialog to show infinite progress-bar while running script

* Replaced loadScript with cmdTask for thread safe execution.
2019-01-28 15:37:20 +02:00
xarkes
8c6db6e3bb Fixed infinite recursion in OverviewView (#1144)
It was calling itself at the end of the function
instead of calling the parent's mousePressEvent
function.
2019-01-27 10:55:53 +02:00
Gaurav Kumar Ghildiyal
e246a8a9d3 Moved type checkbox from windows/info to windows dropdown (#1142) 2019-01-24 23:32:24 +01:00
Florian Märkl
758173e55b Update r2 and fix for r_bin_file_hash() changes (#1143) 2019-01-24 23:29:56 +01:00
vane11ope
43363f25e6 Fix a resizing issue 2019-01-24 20:45:35 +01:00
Vanellope
b25afecc2c Graph Overview (#1120)
Added a Graph Overview
2019-01-24 18:13:04 +01:00
Florian Märkl
fc534df099
Fix CutterCore::getAllRelocs() for RBTree (#1135)
* Fix CutterCore::getAllRelocs() for RBTree

* Update r2 submodule for RBTree C++ fix
2019-01-22 16:35:44 +01:00
xarkes
2d2d4d3346 Release bump 2019-01-21 22:29:42 +01:00
xarkes
f18a22f81d
Fixed about dialog text (#1126) 2019-01-21 22:26:22 +01:00
a1ext
73cf41b81e Translations deployment for MAC & Linux has fixed (#1119)
* Translations load refactoring

* Translations: Added MAC support

* Translations: fixed getting of translation folders

* Fixed code style, documented some methods
2019-01-20 19:00:23 +02:00
Itay Cohen
04ed78444d Fix overlap qlabel and icon in WelcomeDialog (#1123) 2019-01-20 13:14:19 +01:00
Florian Märkl
f917921d49
Fix r2 injection in FunctionsWidget tooltip (#1122) 2019-01-20 12:51:02 +01:00
Florian Märkl
d74d30e10f
Fix CutterSeekable isSynchronized() and signal on de-syncing (#1121)
Also fixes incorrect "(unsynced)" in the graph widget's title.
2019-01-20 12:19:51 +01:00
xarkes
5a97fd496e
Updated translations module (#1118) 2019-01-19 22:16:50 +01:00
Itay Cohen
0fb8a91105 Implement Welcome Dialog (#1116) 2019-01-19 21:54:02 +01:00
xarkes
25b8243f8f Improved xref widget performances (#1112)
* Improved xref widget performances

Removed call to afij that could be very slow.

* Deleted destructor definition

It is bydefault defined in QObject derived
classes so since it's empty we should better ommit it

* Use pd-- and readd destructor
2019-01-16 13:50:27 +02:00
Paul I
00c0994fb5 Replace R_FREE() with r_mem_free() 2019-01-16 12:13:00 +01:00
xarkes
fdf619a762 Moved CutterSeekable to common directory
It used to be in widgets for no reason, it is
just a regular class that is commonly used by some
widgets.
2019-01-15 08:21:35 +01:00
Paul I
c9d5fee987 Add USE_LIB_MAGIC check 2019-01-15 08:21:03 +01:00
a1ext
1a748903e4 Fixed DisassemblyWidget's eventFilter crash (#1111)
* Fixed DisassemblyWidget's eventFilter crash (usage of a non-initialized member before assignment)

* Alignment fix, just to trigger appveyor build
2019-01-15 08:48:30 +02:00
xarkes
3c27c62b2d Fix Graph refresh 2019-01-14 18:50:20 +01:00
xarkes
b27cd39ddc Added RefreshDeferrer to emulation widgets 2019-01-14 18:50:20 +01:00
xarkes
c345981af9 Readded more widgets 2019-01-14 18:50:20 +01:00
xarkes
06da378362 Readded SectionWidget with RefreshDeferrer 2019-01-14 18:50:20 +01:00
Florian Märkl
0ebe1cf728 Fix some minor issues and leaks 2019-01-14 18:50:20 +01:00
Florian Märkl
bbd5ad6b38 Document RefreshDeferrer 2019-01-14 18:50:20 +01:00
Florian Märkl
9ef971263f Fix DisassemblyWidget refreshing 2019-01-14 18:50:20 +01:00
Florian Märkl
d651a0d8be Add createReplacingRefreshDeferrer for convenience 2019-01-14 18:50:20 +01:00
Florian Märkl
b8c92a460d Add RefreshDeferrer 2019-01-14 18:50:20 +01:00
Florian Märkl
3728f977a2 Split isVisibleToUser and refreshing in Dock Widgets 2019-01-14 18:50:20 +01:00
xarkes
f4c720cffa WIP First PoC to draw only visible after seek 2019-01-14 18:50:20 +01:00
fcasal
7f80f96c55 Fixes #1050 (#1107) 2019-01-14 09:17:10 +01:00
Adam Zambrzycki
d05fdd3d44 Add 'Copy' context menu option to graph view (#1097) 2019-01-14 09:16:10 +01:00
xarkes
b0bb1f0610
Fixed many warnings in DisassemblerGraphView (#1103)
Most of them were qreal to integer precision
loss, so I added static_cast to remove the
warnings.
2019-01-13 15:40:37 +01:00
xarkes
f385cf26d5 Refactored CutterSeekableWidget to CutterSeekable (#1099)
This commit refactors the CutterSeekableWidget class
and adds some documentation.
2019-01-13 16:20:07 +02:00
Itay Cohen
bdc684769f
Enforce LTR layout (#1102) 2019-01-12 21:44:23 +02:00
Paul I
c378c7d6f3 Add missing #ifdef checks (#1096) 2019-01-12 16:43:51 +01:00
Itay Cohen
3666c97178 Highlight program counter in Navbar widget (#1095)
Highlight program counter in navbar and add navbar cursor
colors to native theme configuration.
2019-01-12 10:02:07 +01:00
Florian Märkl
f189fb423c
Remove Fallback for afcf in Graph Header (#1090)
since afcf now works for all functions in r2 this is not needed anymore and will greatly improve performance
2019-01-10 15:49:31 +01:00
Paul I
8d92f92025 Wrap Python API 2019-01-09 19:24:37 +01:00
a1ext
9aec148218 FunctionsWidget: tooltip data retrieving optimized (print limited number of instructions instead of printing the whole function) (#1088) 2019-01-09 07:45:07 +02:00
a1ext
78fe3eb3c1 Removed useless information from tooltip and removed very slow data retrieving with afij (#1087)
Now tooltip will show Disasm Preview and Highlights
2019-01-08 14:23:17 +02:00
Vanellope
975fd77116 Adjust size of each section in the address maps of Section Widget (#1086) 2019-01-07 12:43:44 +02:00
Itay Cohen
2ccf58f0a6
Improve XREF window size and locations (#1049) 2019-01-02 21:58:02 +02:00
Itay Cohen
4505d187c4
Set Analysis configuration before executing Analysis commands (#1048)
* Set analysis configurations defined by the user before executing the
analysis commands (fixes #1047)

* Remove (probably) unnecessary lines which reset settings determined by
the user
2019-01-02 15:40:46 +02:00
Vanellope
8e76a9aca5 Click and Seek implemented for the address maps in the Section Widget (#1046)
* Touch and Seek implemented, not yet refactoring

* Done
2018-12-30 17:13:27 +01:00
Itay Cohen
42149f826c
Make Plugin window bigger for readability (#1044) 2018-12-28 09:31:15 +01:00
xarkes
6a5804f3d5 Set default IO to file:// (#1042) 2018-12-27 23:26:59 +01:00
xarkes
63e0d0b779
Cutter 1.7.3 release 2018-12-26 13:00:18 +01:00
xarkes
3e922a89e7
Added release script and appdata.xml (#1028) 2018-12-26 11:52:25 +01:00
Florian Märkl
9a3844f5d1 Kill SidebarWidget 2018-12-25 00:08:19 +01:00
Florian Märkl
8241b09e80 Fix Logo Color for Dark Theme 2018-12-24 17:05:30 +01:00
Florian Märkl
97cacd15f4 Fix Graph Refreshing 2018-12-24 13:49:17 +01:00
Florian Märkl
ae7bac506f Make Console Execute Button consistent with ToolBar 2018-12-21 22:24:52 +01:00
Florian Märkl
6a667790be Set highlightPC for native dark 2018-12-21 22:24:52 +01:00
Florian Märkl
2ffcccd41e Make DebugToolbar into DebugActions 2018-12-21 22:24:52 +01:00
Florian Märkl
55f634dbf1 Disable NSRequiresAquaSystemAppearance 2018-12-21 22:24:52 +01:00
Florian Märkl
350825849b Automatically switch colors if Native Theme is Dark 2018-12-21 22:24:52 +01:00
Florian Märkl
e57c2fb941 Add Dark Native Colors 2018-12-21 22:24:52 +01:00
Florian Märkl
99b1fde47d Cleanup EditVariablesDialog (#1007)
Originally SetFunctionVarTypes
2018-12-19 09:39:23 +01:00
Itay Cohen
c8d8e667fb Right click -> Select block in hexdump widget (#1006)
* jamieb22 modifications and some sanity checks
* improve warning color
* Fix writeable hexdump
* more sanity checks
2018-12-18 18:26:38 +01:00
Itay Cohen
ea5dc6e594
Improve highlight colors (#1003) 2018-12-16 09:07:25 +02:00
Itay Cohen
ab42756729
Fix SIGSEGV on Sections widget (#1004) 2018-12-16 09:06:17 +02:00
Vanellope
16ad5c9220 Only one close button should be shown for PE-Bear thingy. (#993)
* Only one close button should be shown for the AddrMaps in the Section Widget
2018-12-13 13:24:56 +01:00
nullableVoidPtr
984681700b Fixed build.sh constantly updating r2 and added *BSD support (#994)
* Fixed build.sh constantly updating r2 and added *BSD support
2018-12-13 13:23:03 +01:00
Itay Cohen
4026ea11a1 Fix out of bounds crash in Theme selector (#998)
* Fix out of bounds crash in Theme selectors
2018-12-12 18:10:29 +01:00
Itay Cohen
ed621e55a8 Closing #929 | Color functions at offset 0x00 in the Imports widget (#992)
* Color function at offset 0. Closing #929
2018-12-11 19:23:01 +01:00
xarkes
7ce1790fcf
Fix meson version to 0.48.2; updated Qt to 5.10.1 (#996) 2018-12-11 19:22:45 +01:00
a1ext
636057bd53 MAC Build: new package UI design (thanks to @ITAYC0HEN) (#986)
* MAC Build: new package UI design (thanks to @ITAYC0HEN)

* MAC Build: fixed path bar absence
2018-12-04 07:38:16 +02:00
Itay Cohen
efc15cd24a
add context menu seperator (#982) 2018-12-03 17:16:17 +02:00
Itay Cohen
33339a00df
improve selection colors (#976) 2018-12-03 13:45:49 +02:00
Paul I
3fa101d9ee StringsWidget: add shortcuts for QuickFilter (#973) 2018-11-29 23:59:34 +02:00
a1ext
48c34699af Fixes #965 - Fail to duplicate color theme on windows. (#970)
Fixes bug with color change
Performed small refactoring of AppearanceOptionsWidget, ColorSchemeFileSaver
2018-11-29 09:39:58 +02:00
a1ext
200a6949d2 Fixed Dashboard file name displaying: due to utf8 json serialization in radare2 has been fixed, we don't need encoding kludge anymore (#969) 2018-11-28 22:15:53 +01:00
Paul I
3096d24998 [WIP] Some cleanup (#958)
* Some cleanup

* Some more

* Some more

* Some more
2018-11-27 00:34:34 +02:00
fcasal
33d16dda3e Add xref shortcut to Strings Widget (#858) 2018-11-26 19:54:39 +01:00
Vanellope
26d985c9dc Toggle the address maps in the Section Widget (#959)
* Toggle the addr maps in the Section Widget

* Icon transform done.

* Refactoring
2018-11-26 13:09:35 +02:00
a1ext
379567e80c MAC Build: fixed problem when you cannot open Cutter on MacOS due to missing Frameworks (#957) 2018-11-23 17:36:43 +01:00
Vanellope
58fcd70fd2 Centerize the indicator in the address maps in the Section Widget when seek changed (#956) 2018-11-23 09:21:49 +02:00
Vanellope
b606ece545 Fixed Section Widget PE-Bear like (#955) 2018-11-22 10:49:38 +02:00
a1ext
3fb67c9eac Fixes #950 (#951)
`tr` evaluates at the early start even before `QCoreApplication` is instantiated and appropriate translators are set
related with commit a92fc9b
2018-11-21 07:42:37 +01:00
Levente Polyak
350375afce workaround jupyter exception accessing out of bounds argv (#949)
Under certain circumstances the internal argument parser tries
to determine the program name via sys.arv[0], however the way
we run Cutter and the jupyter integration does not guarantee
that argv is set at all, leading to an exception which avoids
a proper startup.
2018-11-20 22:17:30 +02:00
Paul I
30e6498a2c JSON parsing optimization: use static QLatin1String as keys (#947) 2018-11-20 08:45:42 +01:00
Sajjad Pourali
5dd15f821c Fix build error in MacOS with clang (#946) 2018-11-19 08:45:04 +01:00
Paul I
54022a19db Add section comboBox to StringsWidget (#938) 2018-11-17 20:17:16 +01:00
ICEBERG98
1bd7e13192 Fix issue #935 (#941)
* Add Documentation To Headers

* Add refresh after import PDB

* fixed previous error at Line 889 in MainWindow.cpp
2018-11-17 12:10:44 +02:00
Itay Cohen
b17656632c
Implement Set As String (#940) 2018-11-16 23:27:07 +02:00
Florian Märkl
a3188ed028 Properly handle Task Deletion #703 2018-11-12 16:37:33 +01:00
Vanellope
54ea5f014e PE-Bear like interface is supported in the Section Widget (#916)
* basic layout prototyping done

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* Initial commit for the current seek point indicator

* WIP

* A bit of refactoring

* Indicator moves along with the ratio of the address in the section

* Done with this feature for now. Need to fix redrawing the graph issue

* Prevent the duplicated drawings of the items on the graphics scene

* Quite a bit of refactoring

* Refactoring done.

* Add Header

* Added a bit more features and also some refactoring

* Everything should be done now for the comments

* Indicator should move along with the seeks
2018-11-12 10:22:28 +02:00
optizone8
5a62bd6dc7 relevant themes(#816) and delete improvement (#846)
* change constants to enum

* code improvements

* remove redundant lambda usage

* add themes

* bug fix

* bug fix 2

* first start bug fix

* big refactoring

* merge conflict fixes

* removes debug information
2018-11-11 14:11:50 +02:00
Florian Märkl
bd82f2cf45 Update Seek from ConsoleWidget only if it has changed 2018-11-11 12:35:20 +01:00
Florian Märkl
5a03a07e1b Simplify SidebarWidget::setFcnName() to not use S 2018-11-11 12:16:27 +01:00
Paul I
87026dfe28 Bundle r2dec on Appveyor (#913)
Thanks :)
2018-11-10 13:10:26 +01:00
Duck Deux
b01de2d724 Allow multi selection of entries in QTreeView widgets (#903) 2018-11-10 10:17:52 +01:00
xarkes
a92fc9b83e
Changed not synced to unsynced (#911) 2018-11-08 23:20:49 +01:00
xarkes
ab133706f5
Fixed MacOS start script (#909) 2018-11-06 15:49:14 +01:00
xarkes
b1e9db15fc
Various code cleaning (#907) 2018-11-05 22:51:27 +01:00
fcasal
55728e12b8 Update seek after console tasks finishes (#883) 2018-11-04 16:48:02 +01:00
dmknght
af9c5be37e Correct "Rename function" in menu (#904) 2018-11-03 17:00:19 +01:00
a1ext
313e8b17cd Fix of commit dd4a566408 (#901)
Problem was that QSetting were initialized before application/organization name is set
2018-11-02 18:49:15 +02:00
a1ext
84b70215ce DisassemblyWidget: fixed extra characters highlighting (#899) 2018-11-02 10:34:15 +01:00
a1ext
b95620907a Related to #865 issue (#900)
Wrong path separators have been used. The fix makes them consistent and correspond the Operating System.
2018-11-02 08:48:17 +02:00
xarkes
3f76ee000c
Code cleaning (#898) 2018-11-01 23:23:01 +01:00
Adam Zambrzycki
4434e146bf Fix highlight stick out fix (#896) 2018-11-01 18:00:19 +02:00
xarkes
8ff2a88199
Added translations submodule (#895)
* Added translations module

* Updated translation files and submodule
2018-10-31 19:10:31 +01:00
optizone8
dd4a566408 Added translations (#848) 2018-10-31 17:07:52 +01:00
Itay Cohen
ec254b1d24
Fix tabs max-width (#893) 2018-10-31 14:48:49 +02:00
a1ext
ce66fe98b0 Windows&Unicode - build scripts. Fixes #589 (#890)
* Fixes #589
Build scripts were updated
Fixed utf8 file path displaying in Dashboard widget

* Fixed meson build
2018-10-30 15:02:01 +01:00
xarkes
1387ea40e9
Fixed some tr call messages to ease translation (#886) 2018-10-30 08:42:43 +01:00
Adam Zambrzycki
e219b8daba Fix sticking out highlighting on graph (#881) 2018-10-27 18:36:14 +02:00
Adam Zambrzycki
ca1fb52bb7 Add try again option for write error dialog (#880)
* Add try again option for write error dialog
2018-10-27 17:55:22 +02:00
xarkes
cf43ac9d90
Typos, translations, and style fixing (#879) 2018-10-25 23:22:34 +02:00
Florian Märkl
d51a674d5d Temporarily disable macOS Mojave Dark Mode in Info.plist (Fix #772) (#878) 2018-10-25 23:02:35 +02:00
Itay Cohen
3706f13f0a Use constants cbegin and cend (#876) 2018-10-24 12:05:36 +02:00
Itay Cohen
02ce3cb731 Implement the "Search in" feature (#873) 2018-10-23 23:08:02 +02:00
Itay Cohen
08107fdc67 make text in About Dialog selectable (#871) 2018-10-23 09:09:56 +02:00
Rune Tynan
3400314cd2 Change edit dialog to allow no preview (#869)
* Change edit dialog to allow no preview

* AStyle fixes

* More style fixes, forgot some files
2018-10-23 08:06:26 +03:00
Paul
528adf429a Fix segfault in EditFunctionMenu (#868) 2018-10-23 00:31:50 +02:00
Michael Wiarda
f0fc9fc5e3 Disable the debug window menu outside Debug/Emulation mode (resolves #859) (#860)
The debug windows menu is now grayed out if not in Debug/Emulation mode.
2018-10-22 20:06:30 +02:00
Paul
899d64c6f8 Edit Function Menu/Dialog (#528) (#765)
* button added, dialog todo

* WIP EditFunctionDialog

* dialog retrieving function parameters, but not yet setting them

* minor fixups, ok button not working

* wire everything up and add calling convention selection

* fixup Cutter.pro
2018-10-22 12:16:55 +03:00
Ankur Saini
04148a6834 Minor Changes to Hexdump Widget (#863)
* Minor Changes to Hexdump Widget

* Some changes to side view

* Minor change to placeholder text
2018-10-21 20:07:02 +03:00
Florian Märkl
4167b3828f Fix exit() calls in CutterApplication constructor 2018-10-21 19:03:47 +02:00
tushar khurana
3347104cf1 Enable colors for ConsoleWidget (#823) 2018-10-21 16:53:38 +02:00
Vanellope
ac64bbface Segments implemented (#851)
* Segments implemented

* Not util anymore but common

* Fixed the strings to be shown as the headers better

* Quick Filter functionality is supported on both Section and Segment Widget

* QuickFilter should basically be on but for some widgets, they should be off
2018-10-20 21:20:06 +03:00
xarkes
d3572b9eb5
Updated Appstream metadata file and desktop name (#854) 2018-10-20 10:10:00 +02:00
xarkes
989555872e
Changed Cutter.sh to Cutter for macos (Fixes #787) (#853)
* Changed Cutter.sh to Cutter for macos (Fixes #787)
2018-10-19 01:36:31 +02:00
Ankur Saini
d5513c66dc Added Close and Reopen button to HexWidget SideView (#852) 2018-10-18 21:36:46 +02:00