WerWolv
d65e669bbb
impr: Make loading of large table files significantly faster
2023-06-21 23:58:21 +02:00
iTrooz
b7d8e46288
feat: Display detailed error message when loading of project fails ( #1135 )
...
In order to do this I add to make some other additions :
- Add a warning popup (TODO, maybe add some icons to differentiate
error/warning popups in a future PR ?)
- create showError() and showWarning() functions, as helpers to show a
message both to the logs and as a popup
2023-06-21 20:07:36 +02:00
WerWolv
da11c47693
impr: Better sorting of hex cell visualizers
2023-06-21 17:48:51 +02:00
WerWolv
98395afe9d
patterns: Updated pattern language
2023-06-21 13:55:40 +02:00
WerWolv
6435d8d955
feat: Name runner threads for tasks
2023-06-21 09:29:57 +02:00
WerWolv
0da87cdb68
patterns: Updated pattern language
2023-06-21 09:29:40 +02:00
Nik
f703b15165
feat: Added statistics and crash log uploading ( #1149 )
...
Co-authored-by: Justus Garbe <gihihoh@gmail.com>
2023-06-20 11:55:56 +02:00
WerWolv
54061c56bf
fix: Logging race conditions
2023-06-18 22:32:55 +02:00
WerWolv
25154dd450
build: Force enable exceptions and rtti
2023-06-18 14:42:48 +02:00
WerWolv
e09b678426
patterns: Updated pattern language
2023-06-18 10:58:24 +02:00
WerWolv
03f377bf40
fix: Don't try to initialize plugins that failed to load
2023-06-18 10:18:41 +02:00
WerWolv
90a576c3c7
fix: Highlighting and updating of the new console not working well
2023-06-14 10:35:23 +02:00
WerWolv
dd832bfa7e
ui: Make pattern editor console use another text editor
2023-06-13 22:58:57 +02:00
WerWolv
5c31b5cf0d
patterns: Updated pattern language
2023-06-13 13:50:01 +02:00
WerWolv
7de367a944
impr: Properly allow multi-threaded logging without messing up output
2023-06-12 08:24:36 +02:00
WerWolv
03673b5846
feat: Added basic Pattern Language debugger
2023-06-11 21:41:11 +02:00
WerWolv
f0be585fd8
patterns: Updated pattern language
2023-06-11 12:14:24 +02:00
WerWolv
34732a1ee7
fix: Corrected some memory leaks
2023-06-11 10:47:17 +02:00
WerWolv
ef9cb31204
patterns: Updated pattern language
2023-06-11 00:08:34 +02:00
WerWolv
cde5940063
fix: Popups sometimes not appearing centered on the main window
2023-06-10 15:15:52 +02:00
WerWolv
73d4214fd3
fix: Window title being cleared after ImHex exits
2023-06-10 15:08:56 +02:00
WerWolv
0e8273eaa7
impr: Make sure icons are more centered
2023-06-09 00:30:12 +02:00
WerWolv
903d1fb555
impr: Analyze file content of newly loaded files only when they are selected
2023-06-08 17:02:16 +02:00
WerWolv
6e3204b443
patterns: Updated pattern language
2023-06-08 12:16:48 +02:00
WerWolv
81971eaf4a
patterns: Updated pattern language
2023-06-08 09:58:26 +02:00
WerWolv
46270ab213
patterns: Updated pattern language
2023-06-08 09:09:37 +02:00
WerWolv
57bf878312
patterns: Updated pattern language
2023-06-07 23:46:18 +02:00
WerWolv
110c3ac310
patterns: Updated pattern language
2023-06-07 11:08:17 +02:00
WerWolv
456895a6a6
fix: Various pattern drawer issues
2023-06-06 11:29:58 +02:00
WerWolv
a125408410
patterns: Updated pattern language
2023-06-05 17:09:31 +02:00
WerWolv
9712329924
feat: Added pattern export option to pattern data view
2023-06-05 11:57:26 +02:00
WerWolv
59aa52e744
patterns: Allow console log to be printed immediately and from format functions
2023-06-05 09:45:25 +02:00
WerWolv
ae48ae659b
impr: Move various settings from settings window to hex editor and pattern data view
2023-06-05 09:07:58 +02:00
WerWolv
244e34ab84
feat: Added pattern data filter field
2023-06-04 16:13:46 +02:00
WerWolv
100b9e3bca
fix: Cursor icons on Windows not working correctly after imgui update
2023-06-04 12:12:15 +02:00
WerWolv
07aabe8efa
impr: Improved types used in provider functions
2023-06-04 10:42:11 +02:00
iTrooz
25476d4e1e
build: Update ImGui and its dependencies ( #1122 )
...
This PR updates imgui and its dependencies from the last time, ~1 year
ago
(deabacbd50
)
Commits will be refactored before merging
Things you might ask :
- why did you remove `ImGui_ImplGlfw_SetBorderlessWindowMode()` ?
-> Where is it used ? The only usage of it I see is commented
(cb9a3b1f55/lib/external/imgui/source/imgui_impl_glfw.cpp (L757)
)
- why did you remove the implot anti aliasing flag ?
-> They.. seem to have removed it altogether ?
https://github.com/epezent/implot/issues/479
2023-06-04 00:09:45 +02:00
WerWolv
de76c37ffb
fix: Multiple file provider resize issues
2023-06-03 23:57:41 +02:00
WerWolv
1dff81f7cd
fix: Crash when deleting overlays
2023-06-03 22:50:37 +02:00
WerWolv
504c022f01
patterns: Added hex_viewer visualizer
2023-06-02 10:47:23 +02:00
iTrooz
117832e007
impr: Handle crashes that may happen before the main loop ( #1115 )
...
Draft because I absolutely do not trust myself writing good code at 2AM.
I will review it tomorrow
2023-06-01 18:35:41 +02:00
WerWolv
9dafdeb70a
patterns: Updated pattern language
2023-05-29 10:52:39 +02:00
WerWolv
5e0ca4ac50
patterns: Properly display exported variables
2023-05-28 15:44:01 +02:00
WerWolv
8d8a5a70f3
fix: Find view replace and hex editor paste logic being wrong
2023-05-28 14:30:33 +02:00
WerWolv
c8c3f5e753
feat: Added primitive replace feature to find view
2023-05-28 11:50:10 +02:00
iTrooz
0ba011dbe1
feat: Add a native error message when glfw window creation fails ( #1104 )
...
Draft because I want to test it again tomorrow with all OSes, first
---------
Co-authored-by: Nik <werwolv98@gmail.com>
2023-05-27 17:45:41 +02:00
iTrooz
e578127f67
feat: Save opened projects as recent entries ( #1105 )
...
This PR does two things :
- save opened projects as recent entries
- refactor stuff about recent entries in a separate file. The reason is
that I felt like welcome_screen.cpp was really big ( 685 lines before
this, 500 now). What do you think ?
---------
Co-authored-by: Nik <werwolv98@gmail.com>
2023-05-27 16:59:30 +02:00
WerWolv
acfd89aee0
patterns: Updated pattern language
2023-05-27 14:43:53 +02:00
WerWolv
ba33629e80
patterns: Updated pattern language
2023-05-25 12:03:11 +02:00
WerWolv
cb9a3b1f55
fix: Invalid key code error spam
2023-05-24 21:05:14 +02:00
WerWolv
0e3da22c76
feat: Added support for changing the page size
2023-05-23 11:34:30 +02:00
iTrooz
7ce0613977
impr: Added better crash backup and restore mechanism ( #1094 )
...
- Add a new file 'crash.json' to store metadata about the crash, like
the log file or project opened
- show the log file of the session that caused the crash to the user
- Correctly restore the project path
2023-05-22 13:24:48 +02:00
WerWolv
f81276f7e3
feat: Added support for transparent and blurry window styles
2023-05-22 12:00:35 +02:00
WerWolv
e7b51a56a5
feat: Added support for automatically loading patterns using binary pattern magic
2023-05-22 00:01:58 +02:00
WerWolv
df75218ecb
fix: Ranges found by find view not being highlighted
2023-05-22 00:00:50 +02:00
WerWolv
a2333fa22e
patterns: Updated pattern language
2023-05-21 18:02:39 +02:00
WerWolv
2179c3c014
fix: View shortcuts acting like global shortcuts
2023-05-21 18:02:29 +02:00
iTrooz
5666a5c5fb
feat: Added context menu with right-clicking on file provider ( #1084 )
...
Co-authored-by: Nik <werwolv98@gmail.com>
2023-05-21 13:21:53 +02:00
WerWolv
180a27fdc9
fix: Local keybindings not working correctly
2023-05-21 10:28:55 +02:00
WerWolv
f503a89f98
fix: Typo in IEEE754 tool
2023-05-20 21:49:45 +02:00
WerWolv
f94e5488d4
fix: Mouse cursor not adjusting anymore properly
2023-05-20 21:36:15 +02:00
WerWolv
7336c8dddc
fix: Cursor types on Windows sometimes getting stuck
2023-05-20 21:10:12 +02:00
WerWolv
c91e3875d4
build: Updated libwolv
2023-05-20 19:27:00 +02:00
WerWolv
0181325b64
build: Updated libwolv
2023-05-20 18:10:26 +02:00
WerWolv
11f55a7561
fix: File handles not being closed correctly
2023-05-20 18:07:15 +02:00
WerWolv
9bb3a92e12
build: Updated libwolv
2023-05-20 15:47:21 +02:00
KOLANICH
4faebf435c
impr: Remove an unused std::mutex
in TaskManager::runner
( #1088 )
2023-05-20 13:38:12 +02:00
KOLANICH
749823e044
build: Move -s
additional compiler flags into linker flags, and enable it only when gcc/clang are used. ( #1087 )
...
Compiler when compiling doesn't use them in those cases and emit a
warning, which is turned into an error by `-Werror`. Unfortunately,
CPack doesn't expose the logic it uses for stripping binaries.
2023-05-20 13:37:57 +02:00
KOLANICH
608c9e2e7a
fix: WASM disassembler not being available in Capstone < 5 ( #1086 )
...
This fixes build on Debian with Capstone from packages.
2023-05-20 13:37:45 +02:00
WerWolv
96ee544538
build: Updated libwolv
2023-05-20 13:31:41 +02:00
WerWolv
969a37877a
fix: Crash on exit
2023-05-20 13:10:24 +02:00
paxcut
3e4c4430d5
feat: Greatly improved the IEEE754 tool ( #1047 )
...
I just realized one feature request existed about this tool and have
added a comment to it referring this pr. Errors and additions are
described in the fork commit already. I'm not sure if I should repeat
them here again. I have tested the changes thoroughly, but it is always
possible some fringe case was not tested and is incorrect. The tests
were done using the many similar online calculators for IEEE 754
floating point formats.
IEEE 745 floating point tool redesign modeled after 'float toy' web app
(http://evanw.github.io/float-toy/ )
Streamlined output using colors and compact layout which can be further
simplified.
Chosen display mode (detailed or simplified) is automatically saved and
set on new sessions.
Edit the binary bits, the integer hexadecimal or the floating point
decimal values and the entire app will update with the change.
Supports the main IEEE745 standard formats (half, single and double
precision) together with custom formats of size <= 64 bits.
Each format choice uses and displays the number of significant decimal
digits defined by the mantissa size.
Added labels to identify the location of each bit box inside the binary
representation.
Satisfies round trip / idempotent (reproducing) conversion property
Added theme colors, radio buttons for display mode and a clear button
that resets the tool.
Removed previously and incorrectly added locale translation to various
labels and languages
Attempted to adhere to code style formatting using existing code as
example.
An effort was made to use preferred variable types and functions from
std namespace when appropriate.
Attempted to document code using comments.
Not implemented / left to complete at an later time
Arbitrary width and precision formats.
Extended precision formats.
Shortest string property.
hexadecimal floating point display and conversions.
2023-05-19 21:18:38 +02:00
WerWolv
39276e123e
patterns: Allow bitfield values to be edited
2023-05-19 19:56:55 +02:00
WerWolv
0f9434740f
fix: Crash when deleting last environment variable in pattern editor
2023-05-19 17:15:37 +02:00
WerWolv
7ed153a47b
patterns: Updated pattern language
2023-05-19 16:14:54 +02:00
WerWolv
c9d673ce40
patterns: Updated pattern language
2023-05-19 15:29:18 +02:00
WerWolv
0be610f1cd
patterns: Updated pattern language
2023-05-18 23:20:10 +02:00
WerWolv
511375feb5
patterns: Updated pattern language
2023-05-18 09:51:24 +02:00
WerWolv
8119929ece
fix: Don't wait for services on exit
2023-05-16 14:59:14 +02:00
WerWolv
e28f2dfea1
fix: Only 5 patterns per byte being highlighted
...
Fixes #1076
2023-05-16 14:41:02 +02:00
WerWolv
636ed0095d
feat: Added new imhex/capabilities
network interface
2023-05-16 11:01:40 +02:00
WerWolv
14341d611d
impr: Handle macOS Open with... correctly
2023-05-15 18:07:49 +02:00
WerWolv
07565eea63
build: Updated libwolv
2023-05-15 18:07:35 +02:00
WerWolv
c006062540
feat: Added basic network interface support
2023-05-15 11:30:24 +02:00
WerWolv
7656fd7a4e
patterns: Updated pattern language
2023-05-15 08:17:02 +02:00
WerWolv
60a2b30e91
fix: Another wrong include on macOS
2023-05-14 22:53:52 +02:00
WerWolv
79cdf51588
fix: Wrong include on macOS
2023-05-14 22:23:05 +02:00
WerWolv
7b048d9b96
fix: Compile on macOS _again_
2023-05-14 22:03:04 +02:00
WerWolv
d96fc6d41b
fix: Compilation on macOS
2023-05-14 21:50:58 +02:00
WerWolv
609afebc55
fix: Updated build script
2023-05-14 20:20:40 +02:00
WerWolv
3bd9ab6349
fix: Hopefully open files now on macOS
2023-05-14 20:20:22 +02:00
WerWolv
5027f36d95
fix: Open with crashing on macOS
...
#1070
2023-05-14 18:35:35 +02:00
WerWolv
4afd5a7905
patterns: Updated pattern language
...
#1069
2023-05-13 17:21:44 +02:00
WerWolv
6709baa710
patterns: Updated pattern language
2023-05-13 15:43:37 +02:00
WerWolv
857e90a37b
fix: ImHex freezing when evaluating patterns
2023-05-13 11:12:38 +02:00
WerWolv
aaeebd3fe9
fix: Various pattern execution race conditions
2023-05-12 15:46:13 +02:00
WerWolv
18bc5de169
fix: Copy-as options not being disabled correctly
2023-05-12 08:38:07 +02:00
WerWolv
f2af90fe06
fix: Help hover icon issues
2023-05-11 23:56:51 +02:00
WerWolv
0649e0dcd3
impr: Clean up old layout stuff
2023-05-11 23:21:52 +02:00
WerWolv
ceeaca1a4b
feat: Added layout manager to save and restore custom layouts
2023-05-11 18:44:50 +02:00
WerWolv
688471fd61
build: Updated libfmt to 10.0
2023-05-11 12:06:58 +02:00
WerWolv
ea482ff0f5
fix: Crash when closing providers too quickly
2023-05-11 12:01:06 +02:00
WerWolv
8f07f0f8ae
impr: Better look and feel of the welcome screen close button
2023-05-11 12:00:45 +02:00
WerWolv
4f17a96707
build: Updated libwolv
2023-05-11 10:04:09 +02:00
WerWolv
ab41899cc2
build: Updated libwolv
2023-05-11 09:54:06 +02:00
WerWolv
50c3cf8272
build: Replace old interval tree in favour of custom libwolv one
2023-05-11 09:27:23 +02:00
WerWolv
0b29719fe9
patterns: Updated pattern language
2023-05-10 19:15:01 +02:00
WerWolv
5a6e5d2255
build: Switch to better interval tree implementation
2023-05-07 23:27:43 +02:00
WerWolv
82111617a4
patterns: Updated pattern language
2023-05-06 10:09:33 +02:00
WerWolv
0574387ee1
fix: Properly use absolute paths when compiling magic files
2023-05-06 10:09:23 +02:00
WerWolv
2d1381860d
fix: Corrected build issues with GCC 13
2023-05-06 10:07:22 +02:00
iTrooz
e44eb2aa8e
impr: Added more documentation to libimhex ( #1052 )
...
This PR adds some documentation. It's actually pretty random, I followed
the function calls I was curious about and commented whenever I wasn't
sure/I thought it needed clarification
You might want to make sure to squash them, because the commits are kind
of a mess, I didn't went through the effort of interactive rebase
2023-05-05 22:02:18 +02:00
iTrooz
34e12e2515
feat: Added a button to restore default layout when there are no views open ( #1053 )
...
Co-authored-by: Nik <werwolv98@gmail.com>
2023-05-05 22:00:17 +02:00
iTrooz
980e4cad06
fix: Handle errors in Tar::readVector() ( #1059 )
2023-05-05 21:57:37 +02:00
WerWolv
5680b90549
fix: Project files failing to save when no custom encoding is loaded
2023-05-04 23:23:44 +02:00
WerWolv
bec655a8c6
impr: Added event logging in debug mode
2023-05-02 20:35:30 +02:00
WerWolv
0c8b3e31e7
fix: Dangerous function call popup not showing up
2023-05-02 20:34:37 +02:00
WerWolv
f54617e92f
patterns: Updated pattern language
2023-04-21 11:02:12 +02:00
WerWolv
306690762c
impr: Drastically improve file read speeds
2023-04-21 10:52:10 +02:00
WerWolv
58a0fe8109
patterns: Updated pattern language
2023-04-20 14:32:45 +02:00
WerWolv
1e39f4354f
fix: Provider reader being broken
2023-04-20 13:46:44 +02:00
WerWolv
e1b12546da
build: Updated dependencies
2023-04-20 10:48:17 +02:00
WerWolv
1b28bf1474
patterns: Updated pattern language
...
Fixes #1037
2023-04-20 10:41:27 +02:00
WerWolv
8245f3d4c9
build: Updated libwolv
2023-04-19 21:56:34 +02:00
WerWolv
bb8b4afb85
patterns: Updated pattern language
2023-04-18 10:32:38 +02:00
WerWolv
d5b1ef7875
patterns: Updated pattern language
2023-04-18 10:17:37 +02:00
WerWolv
6c122e5fbe
patterns: Updated to new API
2023-04-18 10:06:47 +02:00
WerWolv
bdc51dd8a5
patterns: Updated pattern language
2023-04-17 17:06:52 +02:00
WerWolv
04a5efc7a3
fix: Crash when evaluating patterns to quickly
2023-04-17 17:02:10 +02:00
WerWolv
99a736df27
impr: Replace horrible pattern extra data class with a more modular system
2023-04-17 16:18:48 +02:00
WerWolv
07bef10092
patterns: Updated pattern language
2023-04-17 09:22:21 +02:00
WerWolv
1690cd2740
fix: Various issues with the new popup system
2023-04-16 21:34:29 +02:00
WerWolv
52925c99e8
impr: Default to monitor synchronized FPS limit
2023-04-13 17:12:40 +02:00
WerWolv
1367e9cebe
build: Fixed Objective-C compiler flags
2023-04-13 17:07:34 +02:00
WerWolv
3e87022da1
fix: Provider undo stack not being handled correctly
2023-04-13 16:12:00 +02:00
WerWolv
143fe36d35
build: Fixed various build warnings
2023-04-13 16:11:39 +02:00
WerWolv
803b99f2a9
impr: Immensely improve provider read speeds
2023-04-12 19:21:48 +02:00
WerWolv
86b49f34d9
patterns: Updated pattern language
...
Fixes #1031
2023-04-12 17:18:46 +02:00
WerWolv
7e144b136b
patterns: Updated pattern language
...
Fixes #1030
2023-04-12 16:03:58 +02:00
WerWolv
aa7c5422c0
fix: Make sure provider data is properly cleared when deleting provider
2023-04-11 15:26:18 +02:00
WerWolv
e79664256a
patterns: Updated pattern language
2023-04-09 12:26:13 +02:00
WerWolv
b4d0f984a4
build: Updated libwolv
2023-04-08 21:13:19 +02:00
WerWolv
21f38974a8
impr: Use smart pointers to allocate Views
2023-04-08 12:08:45 +02:00
WerWolv
80edaea392
impr: Update all of ImHex to the new popup system
2023-04-08 00:58:53 +02:00
WerWolv
9c9ac23818
feat: Added a much more flexible popup system
2023-04-07 10:21:27 +02:00
WerWolv
d92e7d19cc
fix: Submenu items ignoring enabled flag
2023-04-06 22:33:02 +02:00
WerWolv
248b93f41a
patterns: Updated pattern language
2023-04-06 19:23:16 +02:00
WerWolv
c73f33aac2
impr: Added various new events
2023-04-06 17:36:28 +02:00
WerWolv
5f713882d4
fix: Occasional crash when loading project files
2023-04-06 12:44:25 +02:00
WerWolv
a5568d09d8
patterns: Updated pattern language
...
Fixes #1011
2023-04-05 18:03:30 +02:00