Commit Graph

336 Commits

Author SHA1 Message Date
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
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
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
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
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
Florian Märkl
6dd71958e2 Add AsyncTaskDialog 2018-05-27 16:51:33 +02:00
Florian Märkl
7117846b3e Use AsyncTask for initial analysis 2018-05-26 20:17:01 +02:00
xarkes
2391b4eff6 Updated radare2 2018-05-24 08:21:12 +02:00
xarkes
24941611fe
g++ fix (#491) 2018-05-13 21:38:53 +02:00
Xaltonon
a04c633655 Replace placeholder icons in preferences window with SVGs (#493) 2018-05-13 20:59:33 +02:00
Xaltonon
21400952f2 Add tree-structured config dialog (#489) 2018-05-13 09:52:49 +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
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
df251dd514 Added new dark grey theme (#471) 2018-05-02 08:02:24 +02:00
fcasal
c0a3ec4481 Reordered related option (#470) 2018-05-01 21:54:51 +02:00
rrreeezzz
f5f2c4702e Add a button "Version Information" in Dashboard (iVj) #317 (#468) 2018-05-01 20:53:14 +02:00
Itay Cohen
5e4dff9639 Load radare script from Options Dialoh (#464)
* Initial implementation of radare script loading from OptionsDialog
* Fixed and removed redundant function
2018-04-30 08:39:48 +02:00
xarkes
09058ead57 Use default font values 2018-04-23 19:30:41 +02:00
rrreeezzz
756ebec512 Delete project with pop-up confirmation (#451) 2018-04-23 09:54:24 +02:00
xarkes
45763f88b5 Fix some font size 2018-04-18 17:14:54 +02:00
Abdel-Rahman A
c79106ef84 Use Core() everywhere (#440) 2018-04-12 08:33:30 +02:00
Abdel-Rahman A
c8fdf4b193 Use qhelpers::adjustColumns in all widgets (#423) 2018-04-01 10:25:31 +02:00
xarkes
d4903c0f3d Pseudo fix for #422 2018-03-28 11:25:40 +02:00
David Roman
87ee023235 Add dir.projects cutter setting (#416) 2018-03-25 18:58:34 +02:00
int 0x80
0ecc0ed113 Allow to run Cutter without any file opened #404 (#419)
* Allow to run Cutter without any file opened #404
2018-03-25 14:36:14 +02:00
Florian Märkl
adb311a122 Move default AsmOptions code to Configuration and shorten it (#415)
* Correct asm.cmtright to asm.cmt.right
* Add asm.flgoff to Disassembly Options
* Add Configuration::get/setConfig
2018-03-22 09:42:54 +01:00
xarkes
3cd71f75e1 Changing coding style 2018-03-21 21:33:40 +01:00
Marco Grassi
391e847ebc Dynamic size for color selection and compile warning fixes (#380) 2018-03-11 11:29:37 +01:00
Abdel-Rahman A
cd38fb9277 Improve 'About' plugins window (#378)
* Show detailed information of RAsm plugins in 'About' window
* Improve 'About' plugins window UI with tabs
2018-03-11 09:39:31 +01:00
Abdel-Rahman A
742690afd0 Add asm.size option in preferences (#374) 2018-03-10 07:26:58 +01:00
Abdel-Rahman A
4cc5e49a24 Add plugin information in 'About' window (#363)
* Add RBin plugin information in 'About' window
* Add RIO plugin information in 'About' window
* Add RCore plugin information in 'About' window
* Add RAsm plugin information in 'About' window
2018-03-09 16:05:40 +01:00
Florian Märkl
051b95c69d Make AnalThread interruptable (Fix #264) 2018-03-09 13:57:57 +01:00
mandlebro
b0c3d438d1 Added load option to set anal.bb.maxsize 2018-03-07 14:15:56 +01:00
xarkes
8a73abf63f Fixed SegFault when closing LoadOptions dialog 2018-03-07 11:49:49 +01:00
Moritz
2439eb52a5 Fix compilation error. (#352) 2018-03-04 20:15:09 +01:00
xarkes
08c2ac54c4 cutter => Cutter 2018-03-04 19:07:33 +01:00
Florian Märkl
f89d9c0434 Add Optional Features Info to AboutDialog 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
xarkes
3843864ff9 Remember color scheme on exit 2018-03-01 16:30:31 +01:00
Florian Märkl
f01fa9d4ea Enable Qt::WA_DeleteOnClose for PreferencesDialog 2018-02-27 14:08:39 +01:00
xarkes
a9f669e27e Splitted Qt theme and color theme (now using eco/ecoj) 2018-02-26 23:25:23 +01:00
0xcpy
16ebe024a3 Right click edit instruction fix #312 (#328)
* Right click edit instruction fix #312
* added bytes editing
2018-02-12 21:12:13 +01:00
nico
4f484eb1f4 Apply logo fix also to AboutDialog (#327) 2018-02-12 13:59:47 +01:00
xarkes
524be44dc2 Fixed white logo on startup #319 2018-02-12 13:22:53 +01:00
xarkes
28ff13729f Made "load bin" checkbox more understandble
It is also now doing as the -n option of radare
2018-02-10 23:31:15 +01:00
nico
fc6159c6b3 Remove the close button and put the About one under the cutter logo fix #289 (#313)
* removed cancelButton_clicked()
* removed NewFileDialog::on_cancelButton_clicked()
* removed cancel button and moved about button
2018-02-04 21:54:54 +01:00
Florian Märkl
3dcd9cab9d Add asm.fcnlines option (Fix #248) 2018-02-04 20:34:52 +01:00
Maijin
330e230572 Add more human readable size 2018-02-04 18:27:48 +01:00