WerWolv
591d98b55b
sys: Improved string search filtering
2022-03-25 21:08:38 +01:00
WerWolv
f39ec58435
ui: Use pretty hexadecimal input fields in more places
2022-03-25 21:07:41 +01:00
WerWolv
368c943040
patterns: Added default parameters
2022-03-24 20:31:45 +01:00
WerWolv
ea848dbfc0
ux: Added support for mathematical expressions in goto fields
2022-03-22 09:06:02 +01:00
Polshakov Dmitry
5dfa9cf501
patterns: Move logic to draw patterns into separate class ( #472 )
...
* refactor(patterns): add visitor interface
* refactor(patterns): add public accessors
* refactor(patterns): add method to get pattern value
* refactor(pattern): make some methods public
* refactor(pattern): extract code to draw GUI
* refactor(patterns): remove GUI related code from patterns
* refactor: move common GUI function from pattern to pattern_drawer
* refactor(pattern_drawer): extract common code into methods
* refactor: rename ImGuiDrawer -> PatternDrawer
* refactor(patternr): move displayEnd into PatternDrawer
* refactor: use ArrayPattern concept to restrict argument type
Co-authored-by: Dmitry Polshakov <dmitry.polshakov@dsr-corporation.com>
2022-03-21 13:52:07 +01:00
Lukas Cone
ab5966fa9d
ui: fixed theme not changing on startup ( #474 )
2022-03-18 17:01:39 +01:00
WerWolv
2d87d29fa0
patterns: Fixed recursive types
2022-03-17 00:10:16 +01:00
WerWolv
f6a498854c
ui: Added console to yara view, add support for yara's new console module
2022-03-15 23:48:49 +01:00
WerWolv
af882b172e
sys: Cache provider validity when drawing toolbar items
...
Possibly addresses issue mentioned in #465
2022-03-13 17:46:59 +01:00
WerWolv
74ef9ece30
ui: Properly clear highlighting cache when switching provider
...
Fixes #471
2022-03-13 17:33:27 +01:00
Lukas Cone
3da1b3f05d
ui/patterns: Added settings tooltips, fixed pattern crash ( #464 )
...
* fix: pattern segfault typo
* ui: added few tooltips into settings
Co-authored-by: WerWolv <werwolv98@gmail.com>
2022-03-05 23:32:30 +01:00
xtexChooser
f21b22ae15
feat(i18n): update Chinese(Simplified) translations ( #463 )
...
* feat(i18n): update Chinese(Simplified) translations
* fix(i18n): fix typo
* feat(i18n): update translations
2022-03-05 23:30:21 +01:00
WerWolv
327e904dbc
sys: Fixed many clang tidy warnings and typos
2022-03-04 20:52:39 +01:00
WerWolv
57c449936f
sys: Improved math evaluator
2022-03-04 19:20:21 +01:00
WerWolv
efe6137067
ui: Improved look of the about page
2022-03-04 19:06:29 +01:00
WerWolv
2739320f10
sys: Refactor of filesystem functions. Fixed crashes where fs errors weren't caught correctly
...
Addresses the crash mentioned in #462
2022-03-04 11:36:37 +01:00
WerWolv
949a26ca0e
patterns: Fixed memory leak when using format
attribute
2022-03-03 12:11:47 +01:00
WerWolv
39da62532b
fix: Trailing zero at end of string input buffers
2022-03-03 09:27:27 +01:00
WerWolv
483ba95d80
fix: Some text boxes not being writable
2022-03-03 09:24:09 +01:00
WerWolv
2300b0c692
fix: Searching not working at all
2022-03-03 09:06:10 +01:00
WerWolv
3d7adf6483
patterns: Make std::mem::find_sequence_in_range return -1 when no sequence is found
2022-03-01 16:55:45 +01:00
WerWolv
56079f70c7
ui: Added alpha preview to color picker tool
2022-03-01 16:36:06 +01:00
WerWolv
6c9e969099
ui: Improved base address setter popup
2022-03-01 16:23:53 +01:00
WerWolv
76f8e6d6ef
fix: Crash when searching for empty strings
2022-03-01 16:18:39 +01:00
WerWolv
174cf3ed95
fix: Crash when entering too much text in various text boxes
2022-03-01 16:12:00 +01:00
WerWolv
5a02c38fcd
store: Fixed more download issues when some folders don't have write perms
2022-02-28 23:10:04 +01:00
WerWolv
66d1b3fd2f
patterns: Huge refactor of Pattern Language runtime to use smart pointers ( #458 )
...
* patterns: Initial work to refactor pattern language to use smart pointers
* patterns: Fixed remaining issues, moved patterns to unique files
* sys: Added missing includes for macOS
2022-02-27 23:25:39 +01:00
Lukas Cone
9737b9cd62
patterns: Added find_sequence_in_range function ( #448 )
2022-02-26 15:53:18 +01:00
WerWolv
73d74f6cde
fix: Crash when changing font size
2022-02-23 10:16:27 +01:00
WerWolv
75bd7805c9
ux: Added custom font and font size setting to settings menu, improve rebooting behaviour
2022-02-21 21:46:25 +01:00
WerWolv
7d9c24ff51
net: Increase store load timeout to 30 seconds
2022-02-21 18:57:53 +01:00
WerWolv
a8e83154f0
fix: Remove button of content store entries not updating correctly
2022-02-21 18:40:51 +01:00
WerWolv
27c2c4dc33
fix: Compile error because of prematurely committed change
2022-02-21 13:52:13 +01:00
WerWolv
754eb89f04
patterns: Fixed jumping to and displaying tooltips of static array entries
2022-02-20 23:54:31 +01:00
WerWolv
08da408471
ui: Added help text to data processor
2022-02-19 16:54:43 +01:00
WerWolv
4a4d5ac694
lang: Fixed broken localization in the Slice node
2022-02-19 16:31:04 +01:00
Lukas Cone
3b4d6d465b
fix: Welcome screen corrupted banner when settings are open ( #447 )
2022-02-19 00:35:07 +01:00
Lukas Cone
26f998ecb6
feature: User now can add custom directories ( #444 )
...
* feat: user directories
* ux: show setting categories in order they were created
* feat: add descriptable setting categories
2022-02-18 22:34:54 +01:00
WerWolv
4c8efed256
fix: Crashing when scrolling through the hex editor too quickly
2022-02-17 21:49:40 +01:00
WerWolv
7e075e5ebb
sys: Added editing support for strings and chars in the data inspector
2022-02-17 14:43:04 +01:00
WerWolv
716d52f3e3
sys: Register languages before registering any other things
2022-02-16 21:32:33 +01:00
WerWolv
7117592f38
sys: Add highlighting provider function support, move pattern highlighting code out of hex editor
2022-02-16 14:57:13 +01:00
WerWolv
b9030d7e47
fix: Issue with erasing characters when pasting then into ImHex
2022-02-16 10:54:17 +01:00
WerWolv
b79cfa213d
fix: Opening recent files with unicode characters in their path
2022-02-16 10:53:48 +01:00
WerWolv
60af9970c1
fix: Opening files with unicode characters in their path
2022-02-16 10:04:05 +01:00
WerWolv
adfaa95149
lang: Added translation to long double inspector line
2022-02-15 21:53:39 +01:00
WerWolv
d6b887b7db
sys: Added basic editing support to data inspector
2022-02-15 21:50:27 +01:00
WerWolv
227040f82f
fix: Undo points not being created correctly
2022-02-15 21:50:02 +01:00
twevs
de86aee6a2
ui: Fixed columns in diffing view. ( #441 )
2022-02-14 21:35:55 +01:00
Polshakov Dmitry
8be39488ec
fix: Hex editor search buttons not working ( #439 )
...
* fix: reset focus only once after window opening
* refactor: extract search functions
* fix: restore focus after search/goto
Co-authored-by: Dmitry Polshakov <dmitry.polshakov@dsr-corporation.com>
2022-02-13 20:13:59 +01:00
Bigfoot
2f61a91459
Prevent crash when opening a file w/o read access ( #437 )
2022-02-13 01:05:19 +01:00
Polshakov Dmitry
63455ce2be
fix: don't change list while iteration ( #434 )
...
Co-authored-by: Dmitry Polshakov <dmitry.polshakov@dsr-corporation.com>
2022-02-12 15:39:47 +01:00
WerWolv
bd30411ba7
ui: Replaced all hex input textboxes with the new ones
2022-02-08 21:51:09 +01:00
WerWolv
42c0b6145b
ux: Disable bookmark toolbar button if nothing is selected
2022-02-08 18:39:15 +01:00
WerWolv
abd3fe6ed1
sys/ux: Improved selection requests
2022-02-08 18:38:54 +01:00
Mark Nokalt
a52fee2248
nodes: Validate some buffer operations ( #425 )
...
* fix: NodeBufferSlice bounds validation
* fix: Make sure buffer is within u64 bounds in NodeCastBufferToInteger
* nodes: Use specific output methods in number constants
2022-02-08 08:32:10 +01:00
WerWolv
a8e49c5a85
nodes: Added Selected Region node
2022-02-07 22:46:22 +01:00
gnuhead-chieb
d17cd64fea
lang: Fixed Japanese mistranslation ( #419 )
2022-02-07 17:17:27 +01:00
gnuhead-chieb
949d036a81
lang: Add Japanese Translation ( #418 )
...
* Add Japanese Translation
* Add files via upload
* Update plugin_builtin.cpp
* Added Japanese translation to build script
Co-authored-by: WerWolv <werwolv98@gmail.com>
2022-02-07 15:42:38 +01:00
WerWolv
2577a2f637
ux: Fixed docking to main window
2022-02-06 21:39:10 +01:00
WerWolv
b3728ae658
ui/ux: hexeditor -> hex_editor, Improved performance and flickering when highlighting bytes
2022-02-06 21:02:31 +01:00
WerWolv
c1b4c4e42a
nodes: Added layered distribution visualizer
2022-02-06 14:44:03 +01:00
WerWolv
a48a1ef272
nodes: Added byte distribution visualizer node
2022-02-06 13:55:19 +01:00
WerWolv
69c48edfdf
nodes: Added Image visualizer
...
Supports JPG, PNG, TGA, BMP, PSD, GIF, HDR and PIC via stb_image
2022-02-06 01:32:15 +01:00
WerWolv
eade95dff7
fix: Pattern source code being deleted when closing a provider
2022-02-05 22:26:00 +01:00
WerWolv
ca57f91bfa
nodes: Added Digram visualizer node
2022-02-05 22:19:32 +01:00
WerWolv
618eead341
sys: Drastically improve highlighting performance
2022-02-04 00:29:47 +01:00
WerWolv
ba68f463e5
ui: Added to matched yara rules
2022-02-02 21:08:46 +01:00
WerWolv
df1d302bcb
sys: Added time and source to logger output
2022-02-02 17:19:50 +01:00
WerWolv
4c51efc5e0
pattern: Improved parsing of integer literals, added support for hex floats
2022-02-02 16:03:18 +01:00
WerWolv
876dbe8179
sys: Final cleanup to get rid of everything builtin in the main application
2022-02-02 00:36:09 +01:00
WerWolv
6977061227
ux: Fixed tips popup and properly apply default layout on first start
2022-02-01 23:33:42 +01:00
WerWolv
ce59226909
sys: Reformat all
2022-02-01 22:09:44 +01:00
WerWolv
1991afb87b
sys: Get rid of SharedData struct and cleanup code structure ( #411 )
...
* sys: Initial refactoring of the SharedData class
* sys/pattern: More refactoring, make every provider have its own patterns
* sys: Finished up refactoring. No more SharedData!
* sys: Fixed compile on Unix
* tests: Fixed unit tests
* sys: Moved view and lang files
* pattern: Added assignment operator support to for loops
* tests: Fixed compile issue
2022-02-01 18:09:40 +01:00
WerWolv
61fc479c79
pattern: Fixed many code inconsistencies and bugs
2022-01-31 14:37:12 +01:00
WerWolv
02fc175289
pattern: Make math functions not dangerous
2022-01-30 20:48:44 +01:00
WerWolv
6ae38aead8
pattern: Added extra math functions
2022-01-30 20:46:02 +01:00
WerWolv
52fa2b4479
pattern: Moved all built-in functions to the builtin namespace
2022-01-30 17:49:38 +01:00
WerWolv
af57b39d8f
pattern: Added #pragma once to prevent multi-includes of files
2022-01-30 17:49:18 +01:00
WerWolv
111c4b71aa
lang: Updated Italian translation. Thanks a lot to @CrustySean
2022-01-30 12:47:28 +01:00
WerWolv
dd572ba024
sys: Return std::nullopt instead of {} for empty optional values
2022-01-30 12:43:43 +01:00
WerWolv
66a13266e6
fix: Pasting bytes not working at all
2022-01-30 11:58:03 +01:00
WerWolv
3f5b258629
ux: Auto focus goto and find text box. Execute function on enter
2022-01-29 21:49:15 +01:00
xtexChooser
3987a5df6a
feat(i18n): update Chinese(Simplified) translation ( #406 )
...
* feat(i18n): update Chinese(Simplified) translation
* feat(i18n): update Chinese(Simplified) translation
* fix(i18n): cpp syntax error
2022-01-29 01:21:52 +01:00
WerWolv
6319449cbd
sys: Added RISC-V, M68K, M680X, Webassembly, MOS65XX and BPF architecture to disassembler
2022-01-24 23:56:02 +01:00
WerWolv
0e08b0226b
sys: Added clang-format file, formatted entire project
2022-01-24 20:53:17 +01:00
WerWolv
a66fec489c
ui: Added some hint text for in/out variable tab, improved centered hints
2022-01-24 00:46:19 +01:00
WerWolv
65212f22a6
pattern/ux: Added copying support to console, clip content, removed prefix
2022-01-24 00:45:46 +01:00
WerWolv
b3a8d02d19
lang: Don't hardcode fallback language anymore
2022-01-23 22:08:19 +01:00
WerWolv
49610f59ea
ux: Added interface to choose encoding files more easily
2022-01-23 21:52:43 +01:00
WerWolv
9cf7fc4a2e
store: Added encoding files to store, fixed crash when folder doesn't exist
2022-01-23 21:52:24 +01:00
WerWolv
053c897056
ui: Added ImHex logo to about page
2022-01-23 20:46:19 +01:00
WerWolv
8397af5c9b
api: Make main menus use the same priority API
2022-01-23 20:45:51 +01:00
WerWolv
2aed6ec13f
ux: Added option to save and load data processors
2022-01-23 11:54:25 +01:00
WerWolv
714d421334
api: Moved menu item adding to a new registry-type API
2022-01-23 11:54:21 +01:00
WerWolv
6c6fe8ad5c
ui: Added license to about page
2022-01-22 23:11:28 +01:00
WerWolv
48aacc0c2e
sys: (s8, s16, s32, s64, s128) -> (i8, i16, i32, i64, i128)
2022-01-22 22:37:52 +01:00
WerWolv
9ddd97a6eb
provider: Added insert bytes feature
2022-01-20 23:24:26 +01:00
WerWolv
ee8b665472
ui: Added API to add custom layouts, imhex application and api cleanup
2022-01-18 00:10:10 +01:00
WerWolv
40d7e4aa6e
build: More repo cleanup, move libimhex and external libs to /lib folder
2022-01-16 14:20:52 +01:00
WerWolv
a5a1ae6725
fix: Providers not compiling on Unix
2022-01-16 02:29:25 +01:00
WerWolv
a70ece7b9c
sys: Bunch of cleanup, use fs::path instead of std::string for paths
2022-01-16 01:51:31 +01:00
WerWolv
ed8ee35a86
ui: Fixed sizing of several popups
2022-01-16 00:48:35 +01:00
WerWolv
8a6b110d0b
ux: Improve loading of encoding files, make advanced encoding enabled by default
2022-01-15 23:44:15 +01:00
WerWolv
1f65fbf422
ui: Fixed hex editor selection frame
2022-01-15 20:56:06 +01:00
WerWolv
25e4902a1c
ui: Improved displaying of a bunch of values in the inspector
2022-01-15 15:15:25 +01:00
WerWolv
bcbda85a40
fix: Compiling of time functions on Unix
2022-01-15 15:03:15 +01:00
WerWolv
abac42826c
fix: Many security and format issues
2022-01-15 14:14:53 +01:00
WerWolv
54785b29dd
api: Moved file extension handling to plugin and added API
2022-01-13 14:34:19 +01:00
WerWolv
c88d428fb5
sys: std::filesystem -> fs
2022-01-13 14:33:30 +01:00
WerWolv
1f8c9b9f71
api: Move copy-as data formatting code to builtin-plugin, add api for it
2022-01-13 00:27:31 +01:00
WerWolv
f6e4d56de6
patterns: Fixed [[static]] attribute and majorly reduced memory usage
...
Fixes #394
2022-01-12 22:02:47 +01:00
WerWolv
d399a6427a
sys: Use custom literals for scaled values
2022-01-11 23:48:18 +01:00
WerWolv
2f1a707fd3
ui: Improve layout of hex editor footer
2022-01-11 23:05:02 +01:00
WerWolv
cbfe52c756
patterns/ui: Limit displaying of array entries to 50 with option to double click last entry for more
2022-01-11 22:38:50 +01:00
WerWolv
652896bd3a
lang: Added missing translation
2022-01-10 21:44:42 +01:00
WerWolv
1fe6dc4c6e
fix: Occasional crash when disassembling files
2022-01-10 21:38:52 +01:00
WerWolv
e35ea13f60
sys: Improved view const-correctness
2022-01-10 21:05:37 +01:00
WerWolv
e1fb0a5d72
ui: Fixed settings window being huge
2022-01-10 21:05:18 +01:00
WerWolv
6ada7885b1
fix: Opening files as read-only if user doesn't have permissions
2022-01-09 21:57:43 +01:00
WerWolv
d38d261bbc
provider: Fixed applying of IPS patches. Handle applying asynchronously
2022-01-09 21:27:59 +01:00
draftshade
fe04d05c28
sys: Add functionality to clear recent files ( #395 )
...
* sys: Add functionality to clear recent files
* sys: Remove clear recent files from welcome window
2022-01-08 23:17:47 +01:00
WerWolv
077bc45b7d
fix: Many format string warnings on MacOS and some Linux distros
2021-12-31 01:10:06 +01:00
WerWolv
3ce0f8f4a8
patterns: Added break and continue statements for loops
2021-12-30 14:44:46 +01:00
WerWolv
7c2e060a5f
fix: Provider reading from invalid addresses on later pages
...
This fixes #384
2021-12-23 15:57:22 +01:00
WerWolv
936d1d6072
sys: Moved to a better shortcut handling system
2021-12-23 15:11:38 +01:00
qxxxb
28e51309cc
Fix saving files ( #382 )
2021-12-22 13:36:26 +01:00
WerWolv
c1bb407b34
ui: Make diff hex view more consistent with the normal hex editor view
...
Fixes #381 . Thanks a lot to @qxxxb
2021-12-22 13:33:22 +01:00
WerWolv
78f6ef464a
ui: Improved look and feel of some tool entries
2021-12-20 22:04:10 +01:00
WerWolv
e11a5d0d44
ui: Added link to discord server to welcome page
2021-12-20 21:38:52 +01:00
WerWolv
ad223a4e5c
sys: Refactor pattern language api functions a bit
2021-12-20 20:40:28 +01:00
WerWolv
376cb01a16
patterns: Disallow calling of dangerous functions by default
...
Closes #330
2021-12-19 12:32:15 +01:00
WerWolv
0efb226c2f
patterns: Make std::env return an empty string and throw a warning if env var doesn't exist
2021-12-18 23:38:16 +01:00
WerWolv
ea92e17ca0
patterns: Added basic support for in/out variables
2021-12-18 22:56:36 +01:00
WerWolv
b082a28cc4
build: Mark libraries as PIC properly
2021-12-17 09:52:11 +01:00
WerWolv
891cc42f08
ui: Added global running tasks progress bar
2021-12-16 23:48:52 +01:00
WerWolv
b17808c6c7
build: Completely get rid of system capstone
2021-12-16 12:37:22 +01:00
WerWolv
6b22464771
fix: Loading a project crashes imhex
2021-12-16 10:07:31 +01:00
WerWolv
1770235648
build: Build and statically link capstone to work around Ubuntu issues
...
Sigh...
2021-12-15 23:28:47 +01:00
WerWolv
f325d50ab8
yara: Actually fixed reading data
2021-12-15 22:52:35 +01:00
WerWolv
7d0d8d5649
yara: Fix address offset after the first page of data
2021-12-15 21:13:45 +01:00
WerWolv
78b3f5aef1
build: Link libraries to relevant projects
2021-12-14 20:16:59 +01:00
WerWolv
e25d98ef63
provider: Fixed opening zero sized files
2021-12-14 20:16:00 +01:00
WerWolv
51474b2eae
ui: Added icon to footer when ImHex has elevated permissions
2021-12-13 22:58:23 +01:00
WerWolv
9bf9788689
fix: Error when opening a file
2021-12-12 21:46:48 +01:00
WerWolv
b372d20ab0
fix: Missing includes on Linux and Mac
2021-12-12 13:42:01 +01:00
WerWolv
d1ce8a5f9b
ui: Fix size of settings window
2021-12-12 13:35:23 +01:00
WerWolv
41ce0f57ed
ui: Improved About page, removed super outdated cheat sheets
2021-12-12 13:35:07 +01:00
WerWolv
1a0b0e2385
provider: Automatically load available disks on windows
2021-12-12 11:56:26 +01:00
WerWolv
443dedd832
ui/lang: Improved localization and interface glitches of GDB provider ui
2021-12-12 11:55:38 +01:00
WerWolv
caf9ee0c58
ux: Added "Open Other" option to open other providers to File menu
2021-12-12 11:53:56 +01:00
WerWolv
b2a9965617
api: Improved Provider registering api, hide implementation functions better
2021-12-12 11:52:58 +01:00
WerWolv
883207bc6b
fix: Compile on MacOS
2021-12-12 01:06:24 +01:00
WerWolv
15e38e1012
ux: Added save pattern option to File menu
2021-12-12 00:52:54 +01:00
WerWolv
8a36897fd9
provider: Added raw disk provider
2021-12-12 00:42:12 +01:00
WerWolv
3e736b36b6
api: Refactored providers to allow for loading interfaces and config views
2021-12-12 00:41:44 +01:00
WerWolv
fb99674217
lang: Added missing localization, changed pattern editor lang keys
2021-12-10 18:00:43 +01:00
WerWolv
8f2e382c8a
patterns: Added std::env and ability to pass parameters to patterns from the UI
2021-12-10 11:55:27 +01:00
WerWolv
6a0ad22774
fix: Inconsistent provider address reading
2021-12-09 21:10:24 +01:00
WerWolv
2ac6348fbf
ui: Welcome screen, GDB Provider and memory editor ui fixes
2021-12-08 22:18:59 +01:00
WerWolv
ea4f4c45cb
sys: std::jthread -> std::thread to support libc++
2021-12-07 23:36:28 +01:00
WerWolv
cc5a437573
provider: Added basic GDB Server provider
2021-12-07 22:47:57 +01:00
WerWolv
4a53717676
sys: Moved all views to builtin plugin
2021-12-07 22:47:41 +01:00
qdlmcfresh
0da31b6bbb
ui: Add result count to string view ( #353 )
...
* Add result count to string view
* Localization
* formating and logic fix
2021-11-30 21:02:37 +01:00
qdlmcfresh
372908ba9d
add regex filter in string view ( #345 )
...
* Filter by regex in string view
* Dont recompile the regex for every string, display error message
* localization
* Use data->Buf for pattern creation / searching
The filter string seems to get updated after the callback finished.
Therefore the search string was always 1 character behind the actual
string in the textfield when calling find() / creating the regex.
2021-11-25 08:46:42 +01:00
xtex
9e808f3ecd
Update zh_CN.cpp ( #343 )
2021-11-12 13:10:48 +01:00
WerWolv
434de44ef5
yara: Added support for displaying variable names
2021-11-04 20:41:56 +01:00
WerWolv
1c1396bf4b
patterns: Added ability to format patterns as strings.
...
This adds support for printing char16 strings
2021-11-04 20:41:56 +01:00
RADICS Áron
a6b8597f5a
Fix CRC and hash calculations ( #321 )
...
* Fix CRC calculation, add more CRC parameters
Use the Boost CRC module to calculate the CRC values.
Add options for final xor value, reflectIn and reflectOut.
Fixes #320
* Cleanup Hash view combo box, add CRC8
* Use offset/size consistently
* Cleanup: unify processing data by chunks
* Change CRC algorithm back, drop boost dependency
This is mostly the original algorithm, with a few fixes and small
additions (support for reflect In / Out, final XOR value).
* Use size_t for file read size consistently
2021-10-26 17:21:48 +02:00
WerWolv
c95e12c136
ui: Increased maximum FPS limit to 200FPS, added unlocked FPS setting
...
Closes #329
2021-10-23 12:59:13 +02:00
Kuruyia
72ec6baf79
sys: Fix macOS compilation (as of 2dc1886
) ( #317 )
...
* sys: Updated curl to latest version
* sys: Fix macOS compilation
* ui: Fix splash screen OpenGL init for macOS
* sys: Fix std::min compile errors
* git: Re-enabled macos workflow
* sys: Remove includes of the range library
* build: Find OpenGL using CMake
* sys/build: Fix bundled plugins on macOS
* build: Copy plugins to bundle when creating a bundle
* build: Fixup bundled plugins
* sys: Search for plugins in the bundle instead of in Application Support
* sys: Allow resources to be placed in multiple directories on macOS
* build: Output built plugins to the plugins/ directory when not creating a bundle on macOS
* sys: Fix Application Support paths on macOS
* sys: Define ftruncate64 on macOS
* sys: Fix absolute value computation for std::string::at on macOS
Co-authored-by: WerWolv <werwolv98@gmail.com>
2021-10-09 23:07:58 +02:00
xtex
17db605b17
i18n: Chinese(Simplified) ( #316 )
...
* i18n: Chinese(Simplified)
* i18n: Chinese(Simplified)
fix: half-width symbol
* i18n: Chinese(Simplified)
2021-10-08 13:26:14 +02:00
WerWolv
241bbd80bc
ui: Fixed pattern data view lang name overlap
2021-10-07 20:34:18 +02:00
WerWolv
2e05845410
ui: Improved command palette
2021-10-07 16:25:59 +02:00
WerWolv
a67263fa27
patterns: Added basic file i/o functions
2021-10-07 14:49:49 +02:00
WerWolv
6d8b7bef09
patterns: Added button to abort evaluation
2021-10-07 11:34:46 +02:00
WerWolv
4b9aff5b29
patterns: Allow str to be used in function bodies
2021-10-04 20:26:34 +02:00
WerWolv
d3e3de3fa2
ux: Improved dropped file loading; Added magic db loading
2021-09-30 12:29:03 +02:00
WerWolv
194bc3e5be
settings: Add option for auto-loading patterns
2021-09-30 12:00:11 +02:00
WerWolv
7978964995
ui: Centered "No bookmarks" text
2021-09-27 23:19:41 +02:00
WerWolv
5db608c3fc
ui: Fixed automatic pattern loading, added better pattern browse popup
2021-09-26 21:18:25 +02:00
WerWolv
e3dd5900e2
patterns: Added parse_int and parse_float functions
2021-09-26 02:23:10 +02:00
WerWolv
9dc62e1469
patterns: Added std::http::get
2021-09-25 16:24:08 +02:00
WerWolv
f5bd0b7971
patterns: Moved std::str to std::string
2021-09-25 00:04:54 +02:00
WerWolv
42d9753bdb
patterns: Fixed std::str::substr
2021-09-25 00:04:40 +02:00
WerWolv
d9134f7fe1
store: Added support for downloading tar'd folders
2021-09-23 22:56:49 +02:00
WerWolv
e57481b87c
tools: Added file shredder, splitter and combiner
2021-09-22 17:56:06 +02:00
WerWolv
85b8698e35
patterns: Add std::mem::read_string
2021-09-21 23:29:30 +02:00
WerWolv
7df1ff07a7
lang: Added diffing view localization
2021-09-21 22:06:30 +02:00
xtex
eb779c5986
i18n: more zh_CN, fix: crashes when connecting with no COM port, feat: remove View
suffix for view menu ( #305 )
...
* fix: crashes when connecting with no COM port
* feat: remove `View` suffix for view menu
* i18n: add more to Chinese(Simplified)
* Revert "Merge branch 'master' of github.com:xtexChooser/ImHex"
This reverts commit 8afcfe8f9d
, reversing
changes made to 7651ad6661
.
2021-09-21 21:30:52 +02:00
WerWolv
c051f5d3e7
patterns: Rewrite evaluation engine ( #306 )
...
* patterns: Rewrite most of the evaluator to mainly use polymorphism instead of just RTTI
* patterns: Fixed a couple of AST memory leaks
* patterns: Parse string operations correctly
* patterns: Various fixes and cleanup
* patterns: Implement primitive function definitions
Function parameters now need to provide their type in the definition
* patterns: Added function variable definition and assignment
* patterns: Added remaining function statements
* patterns: Added unsized and while-sized arrays
* patterns: Added multi variable declarations to functions
* patterns: Added std::format built-in function
* patterns: Allow passing custom types to functions
* patterns: Added attributes and new "format" attribute
* patterns: Use libfmt for std::print instead of custom version
* patterns: Remove unnecessary string compare function
* pattern: Fix preprocessor directives
* patterns: Fix unit tests
* patterns: Added cast expression
* patterns: Handle endianess in function parameters
* patterns: Added casting to different endian
* patterns: Added 'str' type for functions
2021-09-21 21:29:18 +02:00
WerWolv
6ab0ec547c
ui: Make footer items jump around less
2021-09-21 03:10:09 +02:00
WerWolv
8631cb0c2a
sys: Allow multiple files to be loaded simultaneously
2021-09-21 02:29:54 +02:00
WerWolv
a302448b76
tools: Fixed regex replacer
2021-09-20 23:50:37 +02:00
WerWolv
fef072f721
ui: Moved hex editor settings to settings menu
2021-09-20 23:40:36 +02:00
xtex
5edc0b876c
i18n: Chinese(Simplified) ( #303 )
...
* feat(i18n): add Chinese(Simplified) translations
* feat: keep console window on Windows for debug builds
* feat(18n)
* feat(i18n): improve Chinese translation
* fix: unify the line terminators
* feat(build): formatting
* fix: exclude from SysWow64 for 64bits windows
* Revert "fix: exclude from SysWow64 for 64bits windows"
This reverts commit a6d66a4a56
.
* Revert "feat: keep console window on Windows for debug builds"
This reverts commit 9fd4699c9f
.
2021-09-20 18:41:22 +02:00
WerWolv
131699d309
ui: Fixed language list crashing
2021-09-20 12:44:12 +02:00
WerWolv
bf493c5763
ui: Add follow system theme option
2021-09-16 22:23:51 +02:00
WerWolv
d3fb00d441
sys: Allow resources to be placed in appdata on windows
2021-09-13 23:55:50 +02:00
WerWolv
987840e480
sys: Fixed settings not initializing correctly
2021-09-12 13:59:23 +02:00
WerWolv
635f0606e0
patterns: Fixed enums not counting properly
2021-09-11 23:14:22 +02:00
WerWolv
36f51c427b
ui: Added "Quit ImHex" option to File menu
2021-09-10 21:48:51 +02:00
WerWolv
31ef6173a1
lang: Updated Italian translation. Thanks to @CrustySean
2021-09-10 15:30:49 +02:00
WerWolv
8657cf26de
fix: Data inspector causing crashes when failing to decode UTF-16 chars
2021-09-10 15:30:49 +02:00
WerWolv
1a9e3944dc
patterns: snake_case all built-in functions
2021-09-09 23:18:10 +02:00
WerWolv
1da2ca1eb8
ui: Added ImHex's official documentation to help menu and welcome screen
2021-09-09 23:17:55 +02:00
WerWolv
ccac2e497d
sys: Finish implementing constants view and its store
2021-09-09 12:58:44 +02:00
WerWolv
a1d9794c0e
lang: Correct spelling mistakes. Thanks to @friedkeenan
2021-09-09 10:22:58 +02:00
WerWolv
6ee8c37cf5
ui: Fixed duplicate store localization ids
2021-09-09 02:03:39 +02:00
WerWolv
4cc637c0b2
sys: Finish up the online store
2021-09-08 17:22:54 +02:00
WerWolv
e74c0f5cf5
sys: Tons of long overdue cleanup
...
- std::string -> const std::string& where needed
- Added a FileIO abstraction class
- Fixed recent files not updating
- Removed localization file from global include
- Renamed lang to pattern_language/pl
- Renamed EventFileDropped to RequestFileOpen
2021-09-08 15:18:24 +02:00
WerWolv
19c367b540
ui: Added strings to data inspector
2021-09-01 02:01:50 +02:00
WerWolv
82cb7917e4
ui: Added half floats to data inspector
2021-09-01 00:23:45 +02:00
WerWolv
5f63db4a34
ui: Add first unifont plane by default
2021-08-31 15:22:00 +02:00
WerWolv
32eddbf581
ui: Fix wide characters and utf-8 display in inspector
2021-08-30 19:12:46 +02:00
WerWolv
633fa7213a
sys: More compile time improvements
2021-08-29 22:15:18 +02:00
WerWolv
02d31d2d2a
sys: First attempt at reducing build times
2021-08-29 14:18:45 +02:00
WerWolv
7285537d73
tools: Various fixes and improvements
2021-08-28 18:15:47 +02:00
WerWolv
12f975fa70
tools: Added input buttons to the calculator
2021-08-28 18:15:20 +02:00
WerWolv
c1751f39ae
tools: Added wikipedia term definition search
2021-08-28 16:02:53 +02:00
WerWolv
3138d2c4a2
tools: Added Anonfiles uploader
2021-08-28 00:45:59 +02:00
WerWolv
c56159da89
sys: Only restart ImHex when a relevant setting changed
2021-08-27 09:57:03 +02:00
WerWolv
d0aec62997
patterns: Move builtin functions to namespace. Add string functions
2021-08-27 09:56:20 +02:00
jam1garner
76f550d9e7
ui: Format floats sensibly ( #281 )
...
* Use general form with scientific notation as fallback (i.e. `{:G}`)
2021-08-25 20:01:01 +02:00
WerWolv
4ea6f61c52
lang: Added run command localization
2021-08-22 22:11:36 +02:00
WerWolv
d3a227d0bc
sys: Fixed open webpage command, added run command
2021-08-22 21:43:31 +02:00
WerWolv
c84c106b17
ui: Add tips of the day
2021-08-22 21:11:01 +02:00
WerWolv
72cf94106c
ui: Add interface scaling setting. Closes #7 , #283
2021-08-21 13:55:21 +02:00
WerWolv
8ad0239bca
ui/ux: Implement toolbar button functions
2021-08-21 13:53:50 +02:00
WerWolv
37d2d58d2f
ui: Added toolbar
2021-08-21 00:52:11 +02:00
WerWolv
0f45bef980
sys: Update ImGui and ImPlot
2021-08-21 00:51:50 +02:00
WerWolv
63f4d553cc
ui: Add tooltips to custom titlebar buttons
2021-08-18 23:12:27 +02:00
WerWolv
48f27c2174
sys: Added "Restore auto backup" popup on first launch after crash
2021-08-17 22:54:09 +02:00
WerWolv
41db0bfafa
ui: Fixed welcome screen banner and hyperlink rendering
2021-08-16 23:55:06 +02:00
WerWolv
f4046fb8fc
fix: Keyboard shortcuts didn't work. Added Select all menu item
2021-07-29 21:09:18 +02:00
WerWolv
330b4504dc
sys: Updated curl, libfmt, nativefiledialog and yara to latest version
2021-07-28 13:23:50 +02:00
WerWolv
07ad9ed772
tools: Added UNIX permissions calculator
2021-07-27 22:46:37 +02:00
WerWolv
af1d687758
fix: ImHex using way too much resources still
...
Now frames are rendered at only 5 FPS if no input events are being processed. Thanks a lot to @Tey. Properly fixes #189 now
2021-07-27 21:50:49 +02:00
WerWolv
2ccf8e777c
sys: Added create file and resize option
...
Fixes #172
2021-07-27 21:07:36 +02:00
WerWolv
7f0bdc95da
patterns: Added support for declaring custom functions
2021-06-20 21:22:31 +02:00
WerWolv
21f8fb4090
patterns: Added while statement for array sizing
2021-06-17 23:13:58 +02:00
WerWolv
35b92ac453
fix: Remove windows includes from built-in plugin files
2021-06-07 20:11:24 +02:00
WerWolv
e0112472d6
ui: Moved FPS counter to footer
2021-06-07 18:13:54 +02:00
WerWolv
44000d2518
sys: Move windows-only footer items to the windows plugin
2021-06-06 19:17:51 +02:00
WerWolv
21525a7261
ui: Added ImHex directories table to about page
2021-05-23 23:35:04 +02:00
WerWolv
fe977f4ba9
ui: Improve confusing "Quit application" popup text
...
This fixes #234
2021-05-21 23:59:28 +02:00
WerWolv
fee176dc72
nodes: Added data size node
2021-05-18 21:24:33 +02:00
WerWolv
0d11f4460f
nodes: Allow data processor content to be stored in project files
2021-05-18 18:06:47 +02:00
WerWolv
32d47456de
patterns: Added array index syntax to rvalues and turned addressof/sizeof into operators
2021-04-21 10:17:42 +02:00
WerWolv
ebbbcafe5c
sys: Implement more functionality into splash screen ( #223 )
...
* build: Add libcurl
* build: Stop the whole static linking on Windows mess. There's no use anymore
* sys: Added update detector and moved some startup tasks to splash screen
* sys: Updated ImHex icon
* fix: Settings button on welcome page once again works
* build: Fix build on Linux
* sys: Fixed splash window not searching all paths for resources
2021-04-18 20:24:42 +02:00
WerWolv
72eac9f149
ux: Fixed goto to work with base addresses and added absolute goto
2021-04-16 19:44:52 +02:00
WerWolv
59dd372ec8
ux: Added support for pasting bytes
2021-04-16 17:01:01 +02:00
WerWolv
8a485575f5
ui: Added recent files to File menu
2021-04-13 08:41:59 +02:00
WerWolv
6223b26888
ui: Added hex editor highlight opacity setting
2021-03-29 23:07:18 +02:00
WerWolv
147aefc7e5
ux: Add close file button to file menu
2021-03-29 22:44:35 +02:00
WerWolv
a17bc43d80
lang: Improved Italian translation
2021-03-27 19:13:46 +01:00
WerWolv
688ca01b1b
ux: Added undo and redo option
2021-03-26 21:43:24 +01:00
WerWolv
ee10322603
nodes: Added buffer combine, slice and repeat nodes
2021-03-07 13:44:22 +01:00
WerWolv
af444999bf
ui: Added used memory footer item on Windows
2021-03-07 13:20:55 +01:00
WerWolv
d4265f16eb
node: Added arithmetic nodes (add, sub, mul, div, mod)
2021-03-06 14:46:47 +01:00
WerWolv
6cba868e20
sys: Added FPS limit, some power saving
...
#189
2021-03-06 13:09:20 +01:00
Robin Lambertz
4f98149fa7
api: Fix various crashes on bad settings data. ( #186 )
...
getSetting now returns a straight nlohmann::json instead of an optional.
If the data isn't present, it will return a json null.
All accesses to the settings will first check that the data has the
expected type.
2021-03-06 12:40:29 +01:00
tomGER
32cfaac1e2
lang: Small corrections to de_DE ( #193 )
...
* Small corrections to German translation
* Change wording of match_selection
2021-03-04 16:22:18 +01:00
Crusty ★
d954d9280f
lang: Added Italian translation ( #196 )
...
* Added Italian (IT) translation
* Address fixes
* fix missing file in CMakeList
2021-03-04 13:52:35 +01:00
WerWolv
4a908a314f
lang: Added German translation, improved language handling
2021-03-03 22:26:17 +01:00
WerWolv
188723e888
sys: Replace printf formatting with libfmt
2021-03-03 19:58:22 +01:00
WerWolv
4e86d874a7
sys: Fixed one missed api call update on non-windows
2021-03-02 23:15:15 +01:00
WerWolv
a91afdb6ae
ux: Allow copying value from data inspector
2021-03-02 22:09:38 +01:00
WerWolv
3a7a3a6e9c
lang: Add dataSize
function to get size of loaded data
2021-03-02 13:55:43 +01:00
WerWolv
de327cf3a4
ui: Make use of ImPlot to drastically improve information view
2021-03-02 13:49:45 +01:00
WerWolv
31e5ec7bc3
Add Yara rule matching interface ( #178 )
...
* build: Added YARA as submodule
* ui: Added basic yara rules matching interface
* build: Make libyara link libpthread on Unix
* ui: Add jump-to feature to yara matches list
* yara: Add more modules and patch yara to support mbedtls crypto
* yara: Started to fix scanning of bigger data
* yara: Fixed implementation
* ui: Improved yara matcher interface and added localization
* build: Ignore changed files in yara submodule
* yara: Fixed rules matching agianst entire file
* yara: Properly handle compiler errors
2021-02-26 13:35:19 +01:00
WerWolv
7f97416e6e
ui/ux: Improve data analyzer interface, make it run asynchronously
2021-02-22 13:08:06 +01:00
WerWolv
3cbbfb1782
lang: Localize provider data information strings
2021-02-22 13:07:25 +01:00
WerWolv
ced9706c5b
ui: Turned spinner into ImGui widget
2021-02-22 13:06:53 +01:00
WerWolv
0e2add204b
ux: Disassemble asynchronously
2021-02-22 11:56:33 +01:00
WerWolv
490c7e8fec
ux: Search for strings asynchronously
2021-02-22 10:16:58 +01:00
WerWolv
0a29f25330
ui: Open all views and create default layout on first launch
2021-02-21 13:49:03 +01:00
WerWolv
5532a0673f
ui: Localized new strings
2021-02-20 22:41:17 +01:00
WerWolv
0da508594b
ui/api: Added loaded plugin information to welcome screen
2021-02-19 13:22:12 +01:00
WerWolv
89643d1538
lang: Added some strings that went missing
2021-02-19 11:16:09 +01:00
WerWolv
e8027293bf
Disabled multi viewports support on Linux as it didn't work well
...
Also cleanup and fixing a typo
2021-02-18 17:10:56 +01:00
WerWolv
0e00555703
Added Footer and API for it and the welcome screen
2021-02-18 12:09:19 +01:00
WerWolv
b4c2f7d371
Implemented crude support for custom encodings via thingy files
...
Relevant issue: #26
2021-02-14 01:11:55 +01:00
WerWolv
424bba71f7
Fixed localization issues when using the content registry
2021-02-13 15:15:32 +01:00
WerWolv
36a4930b35
Implement localization all throughout ImHex
...
English only for now, additional languages will come in the future
2021-02-11 23:09:45 +01:00
WerWolv
9227fba474
Revamped language system right away again to allow plugins to use it
2021-02-11 00:35:30 +01:00
WerWolv
bd5da4a36e
Added Language setting and localization wrapper
2021-02-10 18:17:09 +01:00
WerWolv
a926b7b912
Added buffer constant node
2021-02-08 23:17:30 +01:00
WerWolv
179e222919
Fixed command palette and added /web command
2021-02-08 19:56:04 +01:00
WerWolv
5b38c43b7e
Fixed plugin loading and closing issues mainly on Windows
...
This fixes #87
2021-02-07 13:40:47 +01:00
WerWolv
4d7d449cea
Added base converter to tools window
2021-02-05 00:17:56 +01:00
WerWolv
ac100936c7
Added comments node
2021-02-04 12:46:38 +01:00
WerWolv
5eb289f1fe
Added proper error messages to data processor
2021-02-04 01:14:05 +01:00
WerWolv
91d05c5de6
Added AES decryption node
2021-02-04 00:21:53 +01:00
WerWolv
ac019a7d7e
Fixed build on Unix, move crypto wrapper to libimhex
2021-02-03 11:54:41 +01:00
WerWolv
fa352b6917
Fixed linker warnings on plugins
2021-02-02 00:39:47 +01:00
WerWolv
8603ec1c99
Fixed 64 bit value display in data inspector once again
2021-02-01 01:12:23 +01:00
WerWolv
f259e347aa
Greatly improved Nodes API
2021-01-31 16:11:25 +01:00
WerWolv
5a59bc2abc
Added casting and control flow nodes to data processor
2021-01-31 01:42:29 +01:00
WerWolv
5c7a529fa1
Added Data Processor using Nodes ( #152 )
...
* Added imnodes
* Added basic data processor view. Still needs to be cleaned up
* Make sure all attached links get properly removed when a Node is deleted
* Cleanup and API exposing
* Added data provider overlays and integrate them with the data processor
* Optimized data processing
* Node UI enhancements
* Added support for all themes to the nodes editor
* Improved data processor context menus
* Fixed data processor context menu showing up everywhere
* Make hex editor context menu behave the same as data processor one
* Add different node pin types and prevent incompatible ones from being connected
* Don't require explicitly marking node as end node
* Fixed plugin copying
* Added some more nodes
2021-01-30 22:39:06 +01:00
WerWolv
8ed03051c3
Properly statically link libwinpthread and cleanup plugins cmake files
2021-01-22 22:44:45 +01:00
WerWolv
104000fbc4
Huge refactoring of builtin features into an external plugin
2021-01-22 18:01:42 +01:00