Commit Graph

281 Commits

Author SHA1 Message Date
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
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
986041380c Add PluginManager 2019-02-21 22:57:26 +01:00
Itay Cohen
843185d594
disable "aan" from advanced options (#1190) 2019-02-13 08:07:08 +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
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
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
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
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
Florian Märkl
1ee1d7d948 Fix Seek to VTable and add some docs 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
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
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
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
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
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
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
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
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
Paul I
3096d24998 [WIP] Some cleanup (#958)
* Some cleanup

* Some more

* Some more

* Some more
2018-11-27 00:34:34 +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
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
optizone8
dd4a566408 Added translations (#848) 2018-10-31 17:07:52 +01:00
xarkes
1387ea40e9
Fixed some tr call messages to ease translation (#886) 2018-10-30 08:42:43 +01: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
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
Florian Märkl
d4a77d9c97 Rename src/utils to src/common 2018-10-17 15:24:56 +02:00
Itay Cohen
0567114b09
Bye bye "General Settings", welcome "Appearance" (#837)
* Bye bye "General Settings", welcome "Appearance"

* Fix Windows header

* fix typo
2018-10-17 10:30:56 +03:00
Florian Märkl
a73492a718 Fix asm.var.sub* fetching in AsmOptionsWidget 2018-10-12 11:02:28 +02:00
a1ext
ea1080f412 [Fix] Fixed issue #805 - wrong handling of Close button in Save Project dialog which had a Discard meaning (#806) 2018-10-12 10:08:04 +03:00
NieGrzegorz
ac4beedbd7 Don't show the "Load Options" dialog when choosing "Don't open any file" (#800)
* Don't show the "Load Options" dialog when choosing "Don't open any file" #712

* Load option only if skipOptionsDialog flag isn't set
2018-10-11 16:04:57 +03:00
optizone8
cd4b86fa69 WIP: Color scheme feature (#709)
* shiny commit
* removes extra displaying of custom schemes
2018-10-10 11:37:24 +02:00
a1ext
6398df6880 [NewFileDialog] filling recent projects list at startup has been added (#785) 2018-10-09 12:18:59 +03:00
xarkes
a98354f402
Hide debug plugins IO (#767) 2018-10-05 18:42:54 +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
jamieb122
be4144babe afvn/afvt support via context menu (#708)
* Added ability to re-type local vars in Dissassembly Widget.  Can re-type to any loaded structs, types or enums
* afvn support via context menu
2018-10-03 22:10:53 +02:00
xarkes
ec815195cf
Astyle pass (cleaning) (#739) 2018-09-30 22:00:53 +02:00
Itay Cohen
91a5d9a6d6
add Filename to Title (#726) 2018-09-27 14:16:07 +03:00
Itay Cohen
23757da471 Fix Drag and Drop issue at Windows (#723) 2018-09-27 09:50:06 +02:00
Adam Zambrzycki
6fe3681871 Fix instruction preview dialog (#714) 2018-09-21 23:44:14 +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
optizone8
a40c1ce4bf Add update check(#684) (#704)
* Add update check(#684)
2018-09-13 08:32:14 +02:00
Rune Tynan
a6a8d5a760 Add instruction preview to the bytes edit dialog (#696) 2018-09-09 19:55:13 +02:00
Florian Märkl
239a4bb620
CutterConfig.h (#663)
* Configure CutterConfig.h

* Configure CutterConfig.h in cmake

* Configure CutterConfig.h with meson
2018-08-26 20:37:11 +02:00
Florian Märkl
49632b2ee4 Don't use native macOS Font Dialog (Fixes #630) 2018-08-20 14:47:28 +02:00
Florian Märkl
f92fb71b0e Make af from DisassemblyContextMenu more meaningful 2018-08-18 21:55:30 +02:00
Florian Märkl
08e55827b7 Fix Default Anal Level 2018-08-18 21:19:53 +02:00
Itay Cohen
57d801612a
fixing graphOptions layout (#640) 2018-08-18 20:13:47 +03:00
Florian Märkl
bab57dea4d Add -i Command Line Arg 2018-08-18 18:34:58 +02:00
Florian Märkl
23e2d5fa9f Use InitialOptions right from the start 2018-08-18 18:34:58 +02:00
Florian Märkl
c2a0de2b31 Rename OptionsDialog to InitialOptionsDialog
And move InitialOptions to InitialOptions.h
2018-08-18 18:34:58 +02:00
Florian Märkl
b9436683d5 Fix OptionsDialog initialization warning 2018-08-15 20:09:15 +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
Vanellope
ae69dc07dd adding Open Shellcode function to the New menu mode (Fix #547) (#609)
* layout done for the shellcode paste function

* paste shellcode functionality done

* fixed a bunch of things for the comments

* replaced the old qregexp with the latest one and some tweaks
2018-08-10 19:12:00 +02:00
Paul I
eb06789958 Add Set to Code/Data feature (#602) 2018-08-04 20:05:56 +02:00
xarkes
f25d93b053 Fix #604 - Forbid double clicking on ok 2018-08-01 21:31:57 +02:00
fcasal
94f417c1ff Added option to break esil execution on invalid instructions (#597)
* Added option to break esil execution on invalid instructions

* update r2
2018-07-27 14:00:23 +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
43215a06ac Add esil stack options and cleanup (#582) 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
mandlebro
cd1656fc30 Added debug option to define program arguments 2018-07-26 12:57:05 +02:00
mandlebro
ac4751eb4a added debug option to change debug plugin 2018-07-26 12:57:05 +02:00
Florian Märkl
2987bd833f Fix companion script loading 2018-07-24 18:49:52 +02:00
fcasal
662837e38e Fix opening correct panel in the preferences dialog via the contextmenu (#583) 2018-07-18 09:27:29 +02:00
Adam Zambrzycki
db682f6ef9 Added options to remove excessive spacing (#577)
* Add option to configure asm.tabs.off
* Add option to configure asm.cmt.col
2018-07-17 09:25:17 +02:00
Paul I
3569842ca6 Enable sorting for plugin lists (#566) 2018-07-09 09:34:46 +02:00
Florian Märkl
5777b1905c Do not show MainWindow if loading failed 2018-07-07 12:39:28 +02:00
Florian Märkl
9ecca8fe38 Reorder starting AnalTask and showing Dialog 2018-07-07 12:32:51 +02:00
xarkes
a84b703559 Fix empty IO 2018-07-07 11:57:04 +02:00
xarkes
ecb5fc75cf Added IO list to NewFileDialog 2018-07-07 11:27:13 +02:00
xarkes
b222aaa094 Save last clicked tab in NewFileDialog 2018-07-07 10:47:46 +02:00
xarkes
520bee81d5 Fixed highlight color in xref dialog 2018-07-02 11:11:06 +02:00
Florian Märkl
a076b2ef7b Fix AsyncTaskDialog::interruptOnClose initialization 2018-06-26 22:11:26 +02:00
Florian Märkl
dd7a5f4eb6 Fix some warnings 2018-06-26 18:17:03 +02:00
xarkes
bfa495321a
C++ Plugins (#550)
* Added Cutter plugins listing
* Added SetupInterface callback
* Added seekChanged signal handling to plugin
2018-06-26 09:40:08 +02:00
Itay Cohen
bd8243f24f Removed old Dark Theme, and replace it with the "Dark Grey" (#549)
* Remove old dark theme, and replace it with the "Dark Grey"

* Fixed comments
2018-06-22 17:57:26 +02:00
xarkes
b8e876ad9c
Made a quick open file dialog (#543) 2018-06-20 11:24:28 +02:00
Florian Märkl
14cfe74324 Use QSharedPointer for AsyncTask 2018-05-28 16:19:04 +02:00
Florian Märkl
7777707062 Remove Progress UI from OptionsDialog 2018-05-27 22:10:23 +02:00
Florian Märkl
39eee858e6 Fix Memory Bug in AsyncTaskDialog 2018-05-27 21:57:37 +02:00
Florian Märkl
4ce04c4f95 Refactor Analysis Options 2018-05-27 21:38:19 +02:00
Florian Märkl
f09d32bd3d Interrupt AsyncTask from AsyncTaskDialog 2018-05-27 18:45:30 +02:00
Florian Märkl
3e8b76138c Use AsyncTaskDialog for initial Analysis 2018-05-27 18:03:29 +02:00
Florian Märkl
896925736f Add Timer to AsyncTask 2018-05-27 16:51:33 +02:00