Commit Graph

546 Commits

Author SHA1 Message Date
Florian Märkl
d4a77d9c97 Rename src/utils to src/common 2018-10-17 15:24:56 +02:00
Florian Märkl
a13a620017 Clean up some unused things 2018-10-17 09:47:47 +02:00
Vanellope
842dda45bd Adding a header to the DisassemblyWidget to show the function prototype (#771)
* Adding a header to the DisassemblyWidget to show the function prototype

* Moving the afcf headerLabel functionality to the GraphWidget

* In middle of implementation

* In middle

* syntax highlighter added

* Implementation done.

* Fixed the changes that were not necessary.
2018-10-16 17:49:26 +03:00
icebp
4b454e086e create keyboard shortcuts for widgets (solve #733) (#819)
* Add shift-F12 shortcut for strings widget.

* change strings shortcut to use global map

* add Shift-I shortcut for Imports

* add Shift-E shortcut for Exports

* add Shift-G shortcut for Graph view

* add widgets shortcuts map file

* update widget checkboxes when using shortcuts
2018-10-16 09:25:09 +03:00
Itay Cohen
25b4301906
Minor fixes to function-widget's tooltip (#836) 2018-10-16 09:20:44 +03:00
a1ext
9118deebf3 Fixed #807 - Function summary displaying in tooltip (#831)
* Fixed #807 - Function summary displaying has bad disasm preview formatting (-monospace font)

* FunctionsWidget: tooltip has made less transparent, hardcoded constants utilization refactored, replaced raw command with json'ed one, added some space between paragraphs in tooltip (thanks to @ITAYC0HEN's advice)
2018-10-15 21:54:52 +02:00
Ankur Saini
3dc71c90d2 Added Context Menu to Strings Widget (#817)
* Added Context Menu to Strigns Widget

* Fixed slot getting called twice without Qt::UniqueConnection
2018-10-15 11:06:15 +02:00
Adam Zambrzycki
4dda930410 Fix non-mono font token highlighting on graph (#825) 2018-10-14 17:44:49 +02:00
Florian Märkl
bd600ee737 Remove isForbidden() 2018-10-13 19:06:26 +02:00
optizone8
2105b1fba2 improve option desctiption displaying (#814) 2018-10-12 15:23:37 +02:00
Ankur Saini
7c37d3413f Fixed an extra empty row inside Vertical View in Function Widget (#797)
* Fixed an extra empty row inside Vertical View in Function Widget

* Should use full column name inside Vertical view
2018-10-11 15:05:47 +03:00
Vanellope
c18912b74c Indicator that tells a command is being executed is implemented. (#789)
* Indicator that tells a command is being executed is implemented.
2018-10-10 20:09:07 +02:00
smhaziq
7c7cb4083c Add status bar and display items count (#779)
* Add status bar and display items count
2018-10-10 14:34:46 +02:00
Paul I
8d3e8a65e1 Remove useless begin-/end-ReloadModel methods (#793) 2018-10-10 13:33:55 +02:00
optizone8
cd4b86fa69 WIP: Color scheme feature (#709)
* shiny commit
* removes extra displaying of custom schemes
2018-10-10 11:37:24 +02:00
Ankur Saini
b298ce8325 Added extra function information to function widget (#788)
* Added Extra Information to Functions Widget
* Sorting enabled through recently added columns in Functions Widget
2018-10-10 08:41:16 +02:00
Vanellope
116ffddb6a Remove an inappropriate line (#775)
* Remove a dispensable function
* fix for a comment
2018-10-09 01:04:18 +02:00
Itay Cohen
005fd53193
fix redundent code (#763) 2018-10-04 18:33:19 +03:00
Itay Cohen
d3766fab12 Improve icon sizes and colors (#762) 2018-10-04 14:37:12 +01:00
smhaziq
d0b5f135b2 Fix Ctrl-F in Flag widget (#759)
* Fixed Ctrl-F in Flags widget
2018-10-04 09:51:22 +02:00
fcasal
dfa803966c Add colors to debug toolbar and string translation (#758)
* Added colors to debug toolbar icons

* Translate debug toolbar strings
2018-10-04 09:15:27 +03:00
mandlebro
d96150528d Debug toolbar update 2018-10-03 22:16:57 +02:00
fcasal
cb173aa616 Attach update (#603)
* Handle process detaching
* List procs wth current filename in separate table;
* Refresh proc list every second
* Fixed restarting debug executable check
* Update r2
* Added option to break esil execution on invalid instructions (#597)
* Added continue until call in esil
* Remove set registers button
* Reordered backtrace widget columns
2018-10-03 22:16:57 +02:00
fcasal
08245a8694 Adds step out funcionality (#598)
* Added step out functionality to toolbar and its shortcut
* Remove step out button when emulating
2018-10-03 22:16:57 +02:00
xarkes
ec815195cf
Astyle pass (cleaning) (#739) 2018-09-30 22:00:53 +02:00
xarkes
c3d029e5aa
Keep graph priority if the graph is empty (#734) 2018-09-30 19:46:36 +02:00
Itay Cohen
50e786cbf0
fix editable hex widget (#725) 2018-09-27 12:56:03 +03:00
Florian Märkl
f6955e4eab Fix Jump Tables (Fix #574) 2018-09-20 16:50:54 +02:00
Vasco Franco
387138908b Write operation failure dialog (#695)
* Write operation failure dialog
* Option to reopen the file in write mode after write failure
2018-09-14 19:20:54 +02:00
Florian Märkl
e3896dd01f Fix #400 - Support r2dec 2018-09-08 09:32:40 +02:00
Vasco-jofra
f7d1ce8771 fix segfault when pressing f or t in graph mode without a defined func 2018-09-08 09:13:20 +02:00
fcasal
95a7d5f210 Fix #252 - select all lines with the selected offset (#673) 2018-09-05 14:47:09 +02:00
fcasal
590f9fb7b9 Add objectName to Sections widget 2018-09-02 11:23:28 +02:00
Paul I
ebce2f1ac0 Kill PieChart (#661)
Kill PieChart (Fix #653)
2018-08-27 13:19:30 +02:00
Paul I
f5edf6f213 Add Core()->message() (#658)
* Add Core()->message()

* Remove MainWindows::addOutput

* Use qDebug() for debug messages

* Add message() to PythonApi

* MainWindow: Replace Core() calls
2018-08-27 13:16:48 +02:00
Paul I
c6787fd58d Export graph as SVG, PDF, PNG... Fix #242
Export graph as SVG, PDF, PNG... Fix #242
2018-08-25 20:54:23 +02:00
Adam Zambrzycki
336c20a955 Graph highlighting (#624)
* Add saving instruction plaintext
* Add graph highlighting
* Remove HighlightToken
2018-08-16 16:05:48 +02:00
xarkes
f98a175c5c
Set bits for analysis after loading the binary (#618) 2018-08-14 17:07:52 +02:00
Itay Cohen
bf07f2a002 UI Improvemetnts + graph.offset implementation (#612)
* Add getBreakpointsAddresses to list breakpoints offsets

* Add breakpoint highligthing and improve of disassembly UIs

* Improve dialogs and positions

* Add graph,offset option to preference

* Tiny text fix

* Updated radare2 sumodule
2018-08-12 18:20:16 +02:00
fcasal
d35f8f64f9 Added continue until call for emulation (#599)
* Added continue until call for emulation
* Updated r2
2018-07-30 08:55:58 +02:00
mandlebro
4424c3c45d Only enable emulation 2018-07-26 12:57:05 +02:00
mandlebro
c6e1d20907 Added register references to registerwidget tooltip 2018-07-26 12:57:05 +02:00
mandlebro
a4d160dd3d Added context menu to register refs 2018-07-26 12:57:05 +02:00
mandlebro
118ccbbdbf Added check for non-executable binary 2018-07-26 12:57:05 +02:00
mandlebro
6a87b342d7 Center label vertically in registers 2018-07-26 12:57:05 +02:00
mandlebro
c869a34d99 Added seeking, editing and colors to stack widget 2018-07-26 12:57:05 +02:00
mandlebro
9f0599d542 Fix location of breakpoint contextmenu 2018-07-26 12:57:05 +02:00
mandlebro
b16df2dc04 * Fix register editing in emulation 2018-07-26 12:57:05 +02:00
mandlebro
886f3f1746 * Fix horizontal scrolling in stack widget 2018-07-26 12:57:05 +02:00
mandlebro
13c3ff4cf8 Added register references widget 2018-07-26 12:57:05 +02:00
fcasal
96f832dafb Monospace fonts (#584)
* Use preferences font in debug widgets and astyle cleanup
* Use pref font in backtrace widget
* Fix opening correct panel in the preferences dialog via the contextmenu
* Fix highlighting in selected instruction and RIP
2018-07-26 12:57:05 +02:00
fcasal
9f7b96281d Debugging shortcuts (#578)
* Added debug shortcuts and debug menu
* Added "Add breakpoint" shortcut
* Added debug shortcuts to readme
* Fix double memorymap ui
* Add bp F2 shortcut and fix toggling bp with shortcuts
2018-07-26 12:57:05 +02:00
Florian Märkl
93596ed62c Fix AttachProcDialog include in DebugToolbar.cpp 2018-07-26 12:57:05 +02:00
fcasal
342fe77886 Added emulation support (#553)
* emulation start button

* add emul continue until syscall

* reopen file after stopping debug

* show debug context menu only when debugging

* updated r2

* Attach to running process

* fix bps issue in debug and attach mode

* renamed signal and added attach icon
2018-07-26 12:57:05 +02:00
fcasal
975e4c4a3d Added new buttons to breakpoint widget (#548)
* Added new buttons to breakpoint widget
2018-07-26 12:57:05 +02:00
fcasal
837ffef20f highlight PC line while debugging (#541)
* highlight PC line while debugging

* highlight PC correctly
2018-07-26 12:57:05 +02:00
fcasal
1f49440c02 Color debug toolbar when debugging (#545) 2018-07-26 12:57:05 +02:00
fcasal
fc94b896c4 Added Breakpoint widget (#546)
* Added breakpoint widget
2018-07-26 12:57:05 +02:00
mandlebro
ffb3903311 add continue until call/syscall to toolbar 2018-07-26 12:57:05 +02:00
mandlebro
40ce944381 added basic debug view and stop debug button to toolbar 2018-07-26 12:57:05 +02:00
fcasal
7eea0ed311 Debug toolbar (#521) 2018-07-26 12:57:05 +02:00
fcasal
390f30b124 Fix segfault when adding new graph widget (#592) 2018-07-24 09:02:35 +02:00
fcasal
afd6c2fd67 Fix export graph in contextmenu (#593)
It was only exporting the help text of ag
2018-07-24 09:01:34 +02:00
xarkes
df61dcdc55 Fix HexDump HTML issues 2018-07-07 12:01:24 +02:00
Florian Märkl
6f19e8c225 Fix unwanted jumping from Hexdump to Disassembly 2018-07-07 11:47:19 +02:00
Florian Märkl
125006b1c2 Optimize VisualNavbar Stats Loading 2018-07-06 18:00:26 +02:00
Florian Märkl
b10d132237 Remove unnecessary newline from VisualNavbar tooltip 2018-07-06 17:37:27 +02:00
Florian Märkl
8566e9e2b3 Fix VisualNavbar range 2018-07-06 17:32:50 +02:00
Florian Märkl
f12118f4d4 WIP VisualNavbar 2018-07-06 17:32:50 +02:00
Florian Märkl
7e8e182f72 Use p- in VisualNavbar 2018-07-06 17:32:50 +02:00
Maijin
9c6a103525 Fix #562, replace ?d. by aod 2018-07-03 20:15:20 -04:00
xarkes
22465615a4 Fixed weird widget priority behaviour and fix #514 2018-07-01 13:47:15 +02:00
fcasal
0c1935d3f1 Refreshing now seeks to the correct offset (#552) 2018-06-27 17:33:21 +02:00
Florian Märkl
2293b608a8 Fix uninitialized fields in HexdumpWidget and VisualNavbar 2018-06-26 22:28:51 +02:00
Florian Märkl
2d98943c13 Fix initialization of some attrs in GraphView 2018-06-26 22:23:10 +02:00
Florian Märkl
dd7a5f4eb6 Fix some warnings 2018-06-26 18:17:03 +02:00
Florian Märkl
83c6fd5d22 Fetch Functions in Task 2018-06-25 21:28:34 +02:00
Florian Märkl
05e49ee8a6 Disable Console QLineEdit when task is running 2018-06-24 21:16:57 +02:00
Florian Märkl
c0397fdcb5 Run Commands from ConsoleWidget in AsyncTask 2018-06-24 21:12:22 +02:00
Florian Märkl
cc3ad67096 Fetch Strings asynchronously 2018-06-24 21:12:22 +02:00
dok
db76bffbe3 widgets/disasm: Add shortcuts to change font-size
Add two shortcut for changing the font-size in the Disassembly window:
CTRL+PLUS : increase font size
CTRL+MINUS: decrease font size

Issue: #298
2018-06-17 17:41:35 +02:00
fcasal
e8b024042b Added widget to view register values (#509)
* Added backtrace info
* Make stack printing arch agnostic
* Split into registers/stack/backtrace widgets
* hide table idxs in stacktable
* backtrace table header has register name instead of generic PC/SP
* imports cleanup
* add sorting to stack table
* add Qheaderview import
* Added button to set registers
* added color to recently changed register
* reorganized Windows tab and added stacking to debug widgets
2018-06-06 13:05:20 +02:00
Florian Märkl
49dabaab71 Optimize seekChanged in FunctionsModel #498 2018-05-25 20:55:05 +02:00
fcasal
0cea9e3287 Multiple graph/disasm/hexdump widgets and independent seeks (#504) 2018-05-25 16:30:59 +02:00
Florian Märkl
c4a4cb8a25 Fix Graph Local Check 2018-05-24 18:58:57 +02:00
Florian Märkl
e642406192 Replace DisassemblerGraphView::sent_seek with connect/disconnect 2018-05-24 18:58:57 +02:00
rrreeezzz
b857e724e8 Add a panel for zignatures #463 (#505) 2018-05-24 17:37:37 +02:00
xarkes
2391b4eff6 Updated radare2 2018-05-24 08:21:12 +02:00
fcasal
7fdfad32f7 Added headers widget (#499) 2018-05-21 19:34:41 +02:00
Xaltonon
55be4efb8c Graph improvements (#500)
* Add antialiasing to graphview
* Make panning speed up/slow down with current zoom
* Made scrolling proportional to zoom level
2018-05-21 19:33:46 +02:00
Itay Cohen
fad76ecddb Disable align to 0 of HexdumpWidget, highlight current seek (FIX #64) (#492)
* Disable align to 0 of HexdumpWidget, highlight current seek

Disabled the alginment to `0x???????0` and made the current seek the first column.
Added color to highlight the current seek address.

* fixed camelCase

* Fixed camelCase#2
2018-05-13 16:43:38 +02:00
fcasal
4b148d74de Added ctrl+wheel zoom in graph view (#484) 2018-05-10 16:08:03 +02:00
xarkes
43b147c6eb Added message box when r_core_file_open fails 2018-05-08 22:44:53 +02:00
xarkes
923a7e888c A bit of AnalThread cleaning 2018-05-05 15:20:36 +02:00
rrreeezzz
53a7d5a959 Button grayed out if no signatures/version info available #474 (#481) 2018-05-05 14:58:26 +02:00
Itay Cohen
eef5022469 Add entropy to Section widget (#480) 2018-05-05 12:11:44 +02:00
Itay Cohen
31c7289726 Fixed Entropy and baddr on Dashboard view (#479) 2018-05-04 12:50:57 +02:00
Paul I
bebc2ec36d More c++11 (#478)
* Replace 0 and Q_NULLPTR with nullptr
* Use c++11 foreach
2018-05-04 09:58:32 +02:00
fcasal
c4d7dd3383 Added copy address feature in graph/disasm (#476) 2018-05-03 09:53:01 +02:00
Paul I
a30ac22056 Refactor SectionsWidget to use Model/View archictecture (#475) 2018-05-03 09:52:30 +02:00
Paul I
fd829986af Refactor SymbolsWidget to use Model/View architecture (#473) 2018-05-02 14:06:31 +02:00
fcasal
df251dd514 Added new dark grey theme (#471) 2018-05-02 08:02:24 +02:00
Paul I
41d2fdc690 Refactor CommentsWidget to use Model/View architecture (#469)
Add QuickFilter panel to CommentsWidget
2018-05-01 20:54:34 +02:00
rrreeezzz
f5f2c4702e Add a button "Version Information" in Dashboard (iVj) #317 (#468) 2018-05-01 20:53:14 +02:00
Paul I
d58e69d411 Add QuickFilter to RelocsWidget (#452) 2018-04-24 20:40:40 +02:00
Paul I
0ae021f9a1 Check QModelIndex/column before processing double click event (#450) 2018-04-23 09:54:06 +02:00
Paul I
09bfc9f3d0 Add QuickFilter panel for ImportsWidget and ExportsWidget (#449) 2018-04-23 09:53:35 +02:00
rrreeezzz
6642f60f75 Add information about register used in a function #381 (#442)
* Add information about register used in a function #381
2018-04-18 11:13:08 +02:00
Florian Märkl
6934d785f4 Limit Disassembly scrolling from 0 and RVA_MAX 2018-04-15 19:06:05 +02:00
Florian Märkl
b8594e3bf5 Remove White Border from Console Input 2018-04-15 15:42:20 +02:00
Florian Märkl
73848d26e7 Fix initial Hexdump Loading with Limits 2018-04-13 16:48:10 +02:00
Florian Märkl
1c58e2706c Limit Hexdump Scrolling from 0 to RVA_MAX 2018-04-13 14:21:39 +02:00
Florian Märkl
d3b8bcb62a Fix blank lines when scrolling up Hexdump 2018-04-13 11:36:30 +02:00
Florian Märkl
2af51a1af0 Fix Hexdump Scroll Up Loading 2018-04-13 11:29:11 +02:00
Abdel-Rahman A
c79106ef84 Use Core() everywhere (#440) 2018-04-12 08:33:30 +02:00
Abdel-Rahman A
05fe4e60ea RelocsWidget: Change from QTableView to QTreeView (#439) 2018-04-12 08:33:03 +02:00
Abdel-Rahman A
e1f17db235 Refactor ImportsWidget to a view and a model (#438)
* Refactor ImportsWidget to a view and a model
* Remove unused delegate
2018-04-12 08:32:31 +02:00
fcasal
7181c81a2b Added /v search ability and usage hints in the box (#435) 2018-04-11 11:55:37 +02:00
xarkes
d263778ad2 Radare2 update 2018-04-11 11:44:01 +02:00
rrreeezzz
997b68ac38 Add more information in Function Panel #382 (#436)
* Add more information in Function Panel #382
* Fix sort
* Fix calltype
* Fix build dir
2018-04-10 20:34:11 +02:00
Abdel-Rahman A
c8fdf4b193 Use qhelpers::adjustColumns in all widgets (#423) 2018-04-01 10:25:31 +02:00
xarkes
8afc02dd4e Hexdump and Pseudocode widgets colors Fix #410 2018-03-25 19:34:25 +02:00
Abdel-Rahman A
5001d395af Refactor RelocsWidget to a model and a view (#418) 2018-03-25 12:57:55 +02:00
xarkes
3cd71f75e1 Changing coding style 2018-03-21 21:33:40 +01:00
int 0x80
bba02f4b9d Add a button Certificate in Dashboard (iCj) Fixes #316 (#409)
* Add a button Certificate in Dashboard (iCj) #316
2018-03-17 20:26:51 +01:00
Nics
c4e8a1c178 Small refactor for the widgets of Cutter (#405)
* Small refactor for the widgets of Cutter

This refactor include the following :

* Creation of a new class
Creation of a new class, named CutterWidget, that inherits from QDockWidget and
is used to represent all of the widgets of the main window.
The goal of this class is to regroup all the behaviour shared by the widgets of
Cutter.

For example : in the constructor, instructions corresponding of those
present in the macro **ADD_DOCK** (in MainWindow.cpp) are executed.
This was made because I think that the macro **ADD_DOCK** which is used
to construct the widgets does not take advantage of the object structure.

* Ensure that every widget has a parent
Some widgets were created using the constructor QDockWidget, but using
**nullptr** (default) as argument, thus they haven't got any parent.

The constructor of a CutterWidget takes as argument the MainWindow and an
action (optional) and calls the constructor of QDockWidget with the main
window as argument. This is valid under the assumption that it is mandatory
for every widget to have the main window as a parent.

* Constructors removal
The constructors of some widgets are not used anywhere and does not seem not
fullfill any current usecase. They were removed.

* Renaming CutterWidget to CutterDockWidget
2018-03-16 22:46:57 +01:00
fcasal
0a252bda7b Added rop gadget search (#403) 2018-03-16 10:07:41 +01:00
Mohd Shahril
8a71d1bb07 SectionsWidget - remove unnecessary dot checking (#392) 2018-03-13 14:53:53 +01:00
Florian Märkl
cd28e00bb5 Add FlagsWidget Context Menu 2018-03-11 17:40:52 +01:00
Florian Märkl
6b7a5c9227 Add Flags Source to ClassesWidget 2018-03-11 16:57:38 +01:00
Florian Märkl
2ab6907746 Add CutterCore::getAllClassesFromFlags() 2018-03-11 12:13:08 +01:00
Marco Grassi
391e847ebc Dynamic size for color selection and compile warning fixes (#380) 2018-03-11 11:29:37 +01:00
xarkes
8849f25a8d Changes for 1.3 release 2018-03-09 16:28:04 +01:00
fcasal
d9592edd1b added basic search (#367)
* Added basic search
2018-03-08 13:24:15 +01:00
xarkes
2eda598ea2 Cleaning 2018-03-07 08:53:37 +01:00
fcasal
09e4bf348e Added typeswidget (#358) 2018-03-06 18:21:48 +01:00
Florian Märkl
4a8352169b Make HexdumpWidget more resizable 2018-03-05 15:10:47 +01:00
fcasal
e115cbc9e9 Fixed sorting in Strings widget (#354)
Sorting by string, type, size or length now works when selecting the corresponding column.
2018-03-05 00:16:54 +01:00
xarkes
08c2ac54c4 cutter => Cutter 2018-03-04 19:07:33 +01:00
Florian Märkl
78c3e5f1e3 Set ResourcesWidget objectName 2018-03-03 18:48:39 +01:00
Florian Märkl
1505aefdd1 Make Jupyter Home Button beautiful 2018-03-03 18:40:06 +01:00
Florian Märkl
09a34d265e Make Jupyter Tabs closable, Add Home Button 2018-03-03 18:12:03 +01:00
Boris Ryutin
17f7c0b593 Add double click function to VTables (#343) (#349) 2018-03-03 12:23:53 +01:00
Florian Märkl
b48d88c6a5 Add QTabWidget declaration 2018-03-02 19:03:12 +01:00
Florian Märkl
a30579a536 Jupyter Tab Titles 2018-03-02 17:56:59 +01:00
Florian Märkl
011d113a5e Disable actionJupyter if not needed, Display Jupyter URL if QtWebEngine is disabled 2018-03-02 15:11:08 +01:00
Florian Märkl
ccedd3d59f Make Jupyter optional for CMake 2018-03-02 15:11:08 +01:00
xarkes
995429b77e Fix scr.color int value 2018-03-01 17:06:13 +01:00
xarkes
13efdf86d5 Removed old Notepad 2018-03-01 16:43:27 +01:00
exokortex
607b8b8ca8 make FunctionsWidget and SectionsWidget sort numbers correctly and align right (#344) 2018-02-28 21:12:51 +01:00