WerWolv
74a5c974e6
patterns: Fixed comments behind pre-processor defines
2022-04-07 13:15:07 +02:00
WerWolv
942a4e9616
patterns: Fixed selection of static array entries
2022-04-07 12:59:23 +02:00
WerWolv
76f732dc53
patterns: Fixed various render issues
2022-04-07 12:47:45 +02:00
WerWolv
0462cc3d0c
sys: Enable -Wall, -Wextra, -Werror and fix all warnings on all Platforms ( #483 )
...
* sys: Make ImHex compile with -Wall -Wextra -Werror
* sys: Fixed various build errors on Linux
* sys: Explicitly ignore return value of `system` function
* sys: More fixes for the warnings GitHub Actions enables somehow
* sys: More fixes
* sys: Remove -Werror again to see all GitHub Actions warnings
* sys: Hopefully fixed all remaining warnings
* sys: Added back -Werror
* git: Change windows icon in GitHub Actions
2022-03-27 00:01:28 +01:00
WerWolv
e72a30ca59
patterns: Make default parameters work properly with parameter packs
2022-03-25 09:53:58 +01:00
WerWolv
368c943040
patterns: Added default parameters
2022-03-24 20:31:45 +01:00
WerWolv
a16e387dff
patterns: Fixed copying of type decl nodes
2022-03-24 18:00:00 +01:00
WerWolv
95cf828975
patterns: Prevent usage of incomplete types
2022-03-24 17:00:10 +01:00
WerWolv
c09d85f46d
patterns: Allow forward declaring of types
2022-03-24 16:57:12 +01:00
WerWolv
c2803fe1e2
sys: Fixed build errors and warnings on Unix
2022-03-22 09:34:26 +01:00
WerWolv
98dfc2e286
sys: Replace __builtin_unreachable() with hex::unreachable()
2022-03-22 09:08:34 +01:00
WerWolv
f7cfee55d5
ui: Enable multi viewports on Linux again if you're not on Wayland
2022-03-22 08:20:14 +01:00
WerWolv
26a7b3325d
patterns: Unified displaying and stringifying string patterns
2022-03-22 08:19:46 +01:00
WerWolv
47fd5bdc00
patterns: Fixed pointer type displaying causing crashes
...
Fixes #480
2022-03-22 08:19:14 +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
WerWolv
bc7c494316
patterns: Fixed highlighting of static array entries
2022-03-19 00:47:36 +01:00
WerWolv
17a2be41da
patterns: Fixed crash when applying certain attributes to types
2022-03-19 00:24:41 +01:00
WerWolv
89fe063b02
patterns: Fixed struct members that overlap with [[no_unique_address]] members not being highlighted
2022-03-17 23:32:22 +01:00
WerWolv
7061a1ebfa
patterns: Allow bitfield fields to be selected
2022-03-17 23:31:36 +01:00
WerWolv
ec9a947259
patterns: Fixed highlight colors of arrays not matching color shown in pattern data view
2022-03-17 23:31:16 +01:00
WerWolv
11441d632b
patterns: Fixed indentation of inlined variables
2022-03-17 23:30:38 +01:00
WerWolv
a17b647e79
patterns: Fixed static arrays showing same value for all entries
2022-03-17 23:29:52 +01:00
WerWolv
2d87d29fa0
patterns: Fixed recursive types
2022-03-17 00:10:16 +01:00
Polshakov Dmitry
d677762dff
perf(pattern): save display value in cache ( #466 )
...
Co-authored-by: Dmitry Polshakov <dmitry.polshakov@dsr-corporation.com>
2022-03-16 00:01:01 +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
WerWolv
327e904dbc
sys: Fixed many clang tidy warnings and typos
2022-03-04 20:52:39 +01:00
WerWolv
96e9400761
sys: Fixed unit test building
2022-03-04 14:34:37 +01:00
WerWolv
3b7a928313
sys: Fixed missing includes on Unix
2022-03-04 11:44:11 +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
559b86efe1
patterns: Display actual type name of types declared with using
2022-03-03 13:33:45 +01:00
WerWolv
949a26ca0e
patterns: Fixed memory leak when using format
attribute
2022-03-03 12:11:47 +01:00
WerWolv
2880ca00da
patterns: Fixed crash when using attributes
2022-03-03 11:19:46 +01:00
WerWolv
483ba95d80
fix: Some text boxes not being writable
2022-03-03 09:24:09 +01:00
WerWolv
cc59b36c54
patterns: Properly reset back current control flow type in arrays
...
Fixes issue mentioned in #460
2022-03-01 20:57:21 +01:00
WerWolv
61d9918dae
patterns: Evaluate return value before setting control flow type
...
Fixes another issue mentioned in #460
2022-03-01 20:37:27 +01:00
WerWolv
775b3e8c52
patterns: Fixed crash when using control flow statements without value
...
Fixes #460
2022-03-01 20:17:03 +01:00
WerWolv
540f468e8a
patterns: Fixed offset being incorrectly incremented when calling functions
2022-03-01 09:40:08 +01:00
WerWolv
b57730c28b
sys: Disable buffering on log files
2022-03-01 00:03:28 +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
Lukas Cone
2847098020
patterns: Added bitfield_order pragma ( #457 )
2022-02-28 00:07:04 +01:00
WerWolv
0cc6d90e3d
patterns: Fixed off-by-one error when calculating unsized array sizes
...
Closes #453 , thanks to @Dyddye
2022-02-27 23:28:34 +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
WerWolv
191a99f91b
fix: Crash when trying to read from an empty file or a directory
2022-02-26 16:43:38 +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
jam1garner
57e1f7ee10
Rework libimhex-rs to use autocxx ( #451 )
...
* Rework libimhex-rs to use autocxx
* Remove Bookmarks::add overload
* Remove manual usage of cxx-rs
2022-02-20 19:14:11 -05:00
WerWolv
754eb89f04
patterns: Fixed jumping to and displaying tooltips of static array entries
2022-02-20 23:54:31 +01:00
WerWolv
9deab9c497
pattern: Allow many variable attributes to be applied directly to custom types
2022-02-19 18:03:07 +01:00
WerWolv
5ae6c8a627
fix: ImGui::TextFormattedCentered didn't properly pass format arguments forward
2022-02-19 18:02:44 +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
Lukas Cone
6c8b75a05f
pattern: add single_color attribute, fixed static array color override ( #443 )
2022-02-18 13:31:44 +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
b9508d853e
build: Fixed building and loading of Rust plugins
2022-02-17 11:42:56 +01:00
WerWolv
90753f4d42
sys: Fixed logging to file omitting all tags and new lines
2022-02-16 21:31:47 +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
33a1e7f055
sys: Added setting to override borderless window mode even on Intel
2022-02-15 23:07:48 +01:00
WerWolv
f72e9700ab
sys: Move Windows theme detection to Windows plugin
2022-02-15 22:50:04 +01:00
WerWolv
d6b887b7db
sys: Added basic editing support to data inspector
2022-02-15 21:50:27 +01:00
Polshakov Dmitry
038b7961db
pattern: Fix scopes not always getting popped again correctly ( #440 )
...
Co-authored-by: Dmitry Polshakov <dmitry.polshakov@dsr-corporation.com>
2022-02-14 20:44:43 +01:00
Polshakov Dmitry
9399cf873f
pattern: Add attribute to format array entries ( #435 )
...
Co-authored-by: Dmitry Polshakov <dmitry.polshakov@dsr-corporation.com>
2022-02-12 15:40:42 +01:00
WerWolv
585058b500
pattern: Fixed control flow statements not being applied correctly
2022-02-11 21:02:18 +01:00
WerWolv
57f31123e7
pattern: Cleanup log console a bit
2022-02-11 16:53:01 +01:00
WerWolv
b4a3eb240e
pattern: Don't allow negative array sizes
2022-02-11 16:52:51 +01:00
WerWolv
0e40b8a81a
pattern: Don't reset offset back after variable placements in global scope
2022-02-09 08:55:51 +01:00
WerWolv
2510f61a4e
pattern: Fixed array pattern data columns being offset
2022-02-09 08:55:00 +01:00
WerWolv
28e5f62c60
fix: ImU64 is somehow not the same as u64 on Linux
2022-02-08 22:25:25 +01:00
WerWolv
1b95722757
ui: Added hexadecimal input text box
2022-02-08 21:10:48 +01:00
WerWolv
1738c3f50a
build: Use correct include directory for capstone
2022-02-08 19:22:52 +01:00
WerWolv
18169b461a
pattern: Fixed selecting first member of nested patterns
2022-02-08 18:39:47 +01:00
WerWolv
abd3fe6ed1
sys/ux: Improved selection requests
2022-02-08 18:38:54 +01:00
WerWolv
e918a594f3
pattern: Improved attribute handling
2022-02-08 17:50:42 +01:00
WerWolv
37ea9c6656
pattern: Allow pattern with nested children to be selectable, make pointers inlinable
2022-02-07 23:21:04 +01:00
WerWolv
137bfe48ca
pattern: Fixed precedence of comparison operators
2022-02-07 21:37:10 +01:00
WerWolv
94506848e0
pattern: Added left_to_right and right_to_left attribute for bitfields
2022-02-07 20:08:19 +01:00
WerWolv
decfad5c99
pattern: Properly treat calculated pointers as not part of the struct
2022-02-06 19:46:39 +01:00
WerWolv
334939324c
pattern: Fixed use-after-free when accessing arrays through an r-value
2022-02-06 18:04:33 +01:00
WerWolv
99f8efac9a
pattern: Fixed pragma once memory corruption
2022-02-06 15:28:20 +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
16a9d0c0c6
sys: Streamline logger functions, reorder tags for better readability
2022-02-06 00:42:38 +01:00
WerWolv
d42d87280d
pattern: Allow pattern function code to be executed separately
2022-02-06 00:18:04 +01:00
WerWolv
5c3bfa690b
pattern: Improved error messages when including std files or calling unknown std functions
2022-02-05 23:02:38 +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
876dbe8179
sys: Final cleanup to get rid of everything builtin in the main application
2022-02-02 00:36:09 +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
8f8f3c5415
pattern: Actually fix strings being displayed wrong
2022-01-31 12:53:04 +01:00
WerWolv
af57b39d8f
pattern: Added #pragma once to prevent multi-includes of files
2022-01-30 17:49:18 +01:00
WerWolv
7321d205fe
pattern: Make parameter packs work inside later scopes
2022-01-30 17:48:51 +01:00
WerWolv
69bd438fe1
pattern: Added parameter packs
2022-01-30 15:18:45 +01:00
WerWolv
dd572ba024
sys: Return std::nullopt instead of {} for empty optional values
2022-01-30 12:43:43 +01:00
WerWolv
bfa3538745
pattern: Fixed color overriding of struct members when struct has a color set already
...
Fixes #409
2022-01-29 22:17:51 +01:00
WerWolv
e6f1dd0490
tests: Improved testing environment, added helpers tests
2022-01-29 17:14:15 +01:00
WerWolv
7b1a146976
pattern: Fixed crashes, removed reference to evaluator in every pattern
2022-01-29 12:40:49 +01:00
WerWolv
75331cda94
pattern: Added compound assignment operators
2022-01-29 04:16:32 +01:00
WerWolv
a0a39f1c04
pattern: Added dollar operator assignment
2022-01-29 03:06:34 +01:00
WerWolv
48de158d7c
pattern: Fixed broken removing of zero-characters from strings
2022-01-29 02:52:20 +01:00
WerWolv
e71091f4a8
pattern: Fixed endian setting applied to structs not applying to its members
2022-01-29 02:52:20 +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
541c0d7547
build/plugin: Make plugins no longer depend on their file name
2022-01-23 23:28:56 +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
8397af5c9b
api: Make main menus use the same priority API
2022-01-23 20:45:51 +01:00
WerWolv
714d421334
api: Moved menu item adding to a new registry-type API
2022-01-23 11:54:21 +01:00
WerWolv
48aacc0c2e
sys: (s8, s16, s32, s64, s128) -> (i8, i16, i32, i64, i128)
2022-01-22 22:37:52 +01:00
WerWolv
4e047beabb
ui/api: Added sidebar
2022-01-22 22:03:54 +01:00
WerWolv
d5d1577b43
pattern: Make sure hidden variables don't get highlighted anymore
2022-01-22 22:03:54 +01:00
WerWolv
42eea8ffba
pattern: Fixed highlighting issues with structs and arrays
2022-01-22 22:03:49 +01:00
WerWolv
10df0175d5
pattern: Added [[no_unique_address]]
attribute
2022-01-22 22:03:44 +01:00
WerWolv
d69eb440d8
pattern: Fixed memory leak when using conditionals in structs
2022-01-22 22:03:37 +01:00
WerWolv
768e74d9d3
pattern: Fixed highlighting of arrays
2022-01-22 22:03:26 +01:00
WerWolv
355b99c68f
pattern: Fixed continue and break statements in structs
2022-01-22 12:32:16 +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
8701e0f402
sys: Log to a file when ImHex wasn't opened though a terminal
2022-01-17 20:06:00 +01:00
WerWolv
40d7e4aa6e
build: More repo cleanup, move libimhex and external libs to /lib folder
2022-01-16 14:20:52 +01:00