WerWolv
18dd754b31
impr: Better handling of hex editor selections
2023-07-20 20:58:28 +02:00
WerWolv
3c97759aa7
fix: Crash when trying to load files with invalid paths
2023-07-19 22:35:55 +02:00
WerWolv
2d4f971d10
impr: Disable endianess switch in hex editor when visualizer only uses one byte
2023-07-18 14:23:02 +02:00
WerWolv
90267ec356
impr: Allow hex editor view to be scrolled slightly past the end
2023-07-18 14:22:39 +02:00
WerWolvTranslationBot
7fc53bf861
lang: Translations update from Weblate ( #1199 )
...
Translations update from [Weblate](https://weblate.werwolv.net ) for
[ImHex/Built-in
Plugin](https://weblate.werwolv.net/projects/imhex/built-in-plugin/ ).
It also includes following components:
* [ImHex/Windows
Plugin](https://weblate.werwolv.net/projects/imhex/windows-plugin/ )
Current translation status:
![Weblate translation
status](https://weblate.werwolv.net/widgets/imhex/-/built-in-plugin/horizontal-auto.svg )
---------
Co-authored-by: Justus Garbe <gihihoh@gmail.com>
Co-authored-by: xtex <xtexchooser@duck.com>
2023-07-17 16:40:40 +02:00
WerWolv
b9c2955b88
fix: Use ANSI escape codes for --plugins
2023-07-17 11:59:21 +02:00
WerWolv
6d7f217e2a
patterns: Updated pattern language
2023-07-17 11:20:17 +02:00
WerWolv
a83ca3c228
feat: Added --pl and --magic command
2023-07-17 10:43:29 +02:00
WerWolv
b9ec1a150d
fix: Wrong libfmt header being included
2023-07-17 09:12:22 +02:00
classabbyamp
d9a4906b3c
impr: Clarify portal error message ( #1197 )
...
<!--
Please provide as much information as possible about what your PR aims
to do.
PRs with no description will most likely be closed until more
information is provided.
If you're planing on changing fundamental behaviour or add big new
features, please open a GitHub Issue first before starting to work on
it.
If it's not something big and you still want to contact us about it,
feel free to do so !
-->
### Problem description
<!-- Describe the bug that you fixed/feature request that you
implemented, or link to an existing issue describing it -->
see #723
### Implementation description
<!-- Explain what you did to correct the problem -->
`xdg-desktop-portal-wlr` is not relevant because it does not provide the
FileChooser interface.
`xdg-desktop-portal` needs the `WAYLAND_DISPLAY` env var on wayland and
the `DISPLAY` and `XAUTHORITY` env vars on xorg. If the dbus user
session bus is not run in a way that it already gets those variables,
they must be given via `dbus-update-activation-environment(1)`.
### Screenshots
<!-- If your change is visual, take a screenshot showing it. Ideally,
make before/after sceenshots -->
### Additional things
<!-- Anything else you would like to say -->
fixes #723
2023-07-17 09:11:40 +02:00
WerWolv
e9450b490f
feat: Added --plugin, --calc, --hash, --encode and --decode subcommands
2023-07-16 23:46:41 +02:00
WerWolv
52c517d38d
fix: Potential crash when loading incorrect data processor node files
2023-07-16 20:41:06 +02:00
WerWolv
aac9bf3896
fix: Crash when using "Open in new View" button in bookmarks
2023-07-16 20:35:10 +02:00
WerWolv
54891c6d8f
impr: Added proper localization for new visualizer endianess toggle
2023-07-16 20:25:31 +02:00
WerWolv
7631778edb
feat: Added support for big endian in data visualizers
2023-07-16 19:53:02 +02:00
Justus Garbe
1a3debd6c9
fix: Raw Disk Provider not working correctly on Linux and macOS ( #1195 )
...
<!--
Please provide as much information as possible about what your PR aims
to do.
PRs with no description will most likely be closed until more
information is provided.
If you're planing on changing fundamental behaviour or add big new
features, please open a GitHub Issue first before starting to work on
it.
If it's not something big and you still want to contact us about it,
feel free to do so !
-->
### Problem description
- Fixed disk provider not working for linux
### Implementation description
- Used ioctl instead of fstat
- Fixed buffer issues
---------
Co-authored-by: WerWolv <werwolv98@gmail.com>
2023-07-16 18:18:41 +02:00
WerWolv
893b06c78b
feat: Allow hex editor editing mode to be entered when pressing Enter
2023-07-16 18:14:48 +02:00
WerWolv
3a775e982f
build: Removed outdated and dangerous linker flags in plugins
2023-07-15 10:02:34 +02:00
WerWolv
c1cdab72ef
fix: Weird behaviour when trying to open a non-existing file through the command line
2023-07-15 00:12:09 +02:00
iTrooz
1ed658bcdc
feat: Added command line interface support ( #1172 )
...
System design has been discussed on discord
Should fix #948
---------
Co-authored-by: WerWolv <werwolv98@gmail.com>
2023-07-13 14:08:23 +02:00
WerWolv
272b4b0cf8
feat: Added "Update All" button to content store
2023-07-11 09:19:52 +02:00
WerWolv
8524e93445
impr: Display encoding types in header of hex editor
...
Closes #1186
2023-07-11 00:04:26 +02:00
WerWolv
ce9ce42c1c
impr: Only reload localization when necessary
2023-07-09 20:24:56 +02:00
WerWolv
6343cb092b
build: Fixed include issues
2023-07-09 12:53:31 +02:00
WerWolv
2449b08f64
fix: Crash when trying to remove chunks larger than the whole file
2023-07-06 21:14:50 +02:00
WerWolv
c9c6f3aadb
fix: New visualizers behaving weirdly with large font sizes
2023-07-06 10:08:47 +02:00
WerWolv
924c816dbd
fix: Chunk size setting in information view being reset the first time
2023-07-06 00:00:56 +02:00
WerWolv
695e11477e
feat: Added single stepping feature to pattern debugger
2023-07-05 21:32:11 +02:00
iTrooz
e3ae169833
impr: Separate the behaviour of being savable and being dumpable for provider ( #1183 )
...
### Problem description
Currently, the providers use the method `isSavable()` to determine both
if they can use "Save" or "Save as".
This behaviour is problematic because some providers may need to be
saveable but not saveable as: for example the view provider. The
original provider may not allow to be saved.
### Implementation description
I separate these two behaviour by creating another function:
`isDumpable()`, that return true by default but can be overridden by the
provider to return false, if the provider should not be dumped in any
way.
### Additional things
While I was at it, I also marked "export" operations as needing the
"dumpable" flag. That way, we can't accidentally export the whole
address space of a process as base64.
I also added documentation for these some functions in Provider
2023-07-05 20:49:57 +02:00
WerWolv
b6881d2362
feat: Added timestamp visualizer
2023-07-05 19:54:18 +02:00
WerWolv
8e0349e2ac
fix: Projects failing to be loaded when another project is being unloaded
2023-07-04 23:30:37 +02:00
WerWolv
86c4c8fa96
feat: Added new pattern inline visualizers
2023-07-04 22:18:06 +02:00
WerWolv
33566137c2
impr: Allow bitmap visualizers to be zoomed
2023-07-04 22:17:51 +02:00
WerWolv
f16bbfb469
feat: Added coordinates visualizer
2023-07-04 09:40:05 +02:00
WerWolv
b265d8e54a
build: Restructure romfs assets
2023-07-04 08:42:33 +02:00
WerWolv
6a667d9493
impr: Allow image visualizer image to be scaled
2023-07-03 21:24:36 +02:00
WerWolv
ceed8c7420
pattern: Properly display Start/End/Size column again for zero sized types
2023-07-03 21:24:15 +02:00
WerWolv
d297b2d1cc
impr: Hide sections with an empty name
2023-07-03 12:04:20 +02:00
WerWolv
39e74c627e
impr: Handle unidentifiable data in the data information view better
2023-07-02 10:27:56 +02:00
WerWolv
a0c89858ed
patterns: Don't re-evaluate format functions during highlighting
2023-07-01 14:06:15 +02:00
iTrooz
c6c3ca4d26
fix: Reset terminate handler directly when being called + some other crashes to crash handling ( #1174 )
...
This PR fixes some things about crash handling:
- when the terminate handler is called, immediately set it back to the
original one, so can't make a recursion if the crash-handling code fails
- Only save projects if the crash occured after Imhex finished startup
- do not update the project location when saving the crash backup file:
this will remove problems when `EventAbnormalTermination` is called
before `crashCallback()`
I also added a bit more documentation
2023-07-01 12:32:28 +02:00
WerWolv
301418c728
fix: Bookmarks not being loaded correctly when multiple providers are in project
2023-07-01 12:27:59 +02:00
iTrooz
aec38328d0
impr: Added "Hold SHIFT for more info" text to provider tooltip ( #1171 )
...
As discussed on discord
2023-06-30 22:28:37 +02:00
WerWolv
050a71913a
impr: Improved construction of language settings dropdown
2023-06-30 14:00:10 +02:00
WerWolv
8cc6994dd0
fix: Properly apply UI scaling on launch
2023-06-30 13:40:39 +02:00
WerWolv
bc98556897
impr: Automatically scroll pattern console to the bottom when new lines are added
2023-06-30 00:11:48 +02:00
WerWolv
4f08ba3590
patterns: Fixed race condition when evaluating patterns
2023-06-30 00:11:26 +02:00
WerWolv
d527675bda
build: Make sure changing commit hash doesn't trigger a full rebuild
...
Closes #1137
2023-06-26 14:01:45 +02:00
WerWolv
15cd2b693c
fix: Crash when using paste without a valid selection
2023-06-26 11:14:10 +02:00
WerWolv
cda883bb0f
fix: Page count displaying wrongly in empty files
2023-06-26 11:13:12 +02:00
WerWolv
e03c91b888
impr: Better UI for all data information diagrams
2023-06-26 10:51:37 +02:00
WerWolv
9282f1fe75
fix: Multiwindow support not being disabled by default on Linux
2023-06-26 09:02:23 +02:00
WerWolv
af147b4f54
fix: Titlebar button localization keys still being inside the windows plugin
2023-06-26 08:54:30 +02:00
WerWolv
c280b16787
fix: Make disassembler view not clear selection when typing in region
2023-06-24 20:53:36 +02:00
WerWolv
a449478e39
patterns: Make updating favorites and pattern tooltips not lag out ImHex
2023-06-24 16:40:34 +02:00
WerWolv
c1babc2a55
fix: Prevent data inspector table from being scrollable
2023-06-24 15:39:19 +02:00
WerWolv
b644020e0f
impr: Allow Accept Pattern popup to be closed with Escape
2023-06-24 15:32:05 +02:00
WerWolv
07ffd21c5a
fix: Entropy and byte type graph sometimes stopping in the middle
2023-06-24 15:20:26 +02:00
WerWolv
af951e3526
fix: Entropy and byte type diagram address and display being wrong
2023-06-24 11:53:21 +02:00
WerWolv
ade05f8e12
impr: Only load a limited subset of unicode characters by default
2023-06-24 10:58:42 +02:00
WerWolv
1e9cc97263
feat: Added scope selector dropdown to pattern debugger
2023-06-24 00:49:43 +02:00
WerWolv
a7ecefb5a0
fix: Don't load constants files that start with a _
2023-06-23 21:39:39 +02:00
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
3fe6cd057b
impr: Upper case pattern data export options
2023-06-21 17:49:03 +02:00
WerWolv
da11c47693
impr: Better sorting of hex cell visualizers
2023-06-21 17:48:51 +02:00
WerWolv
9cd19063da
fix: Occasional crashes when evaluating patterns
2023-06-21 10:30:00 +02:00
WerWolv
0da87cdb68
patterns: Updated pattern language
2023-06-21 09:29:40 +02:00
WerWolv
eed785d73f
impr: Better layout for statistics value in statistics popup
2023-06-21 00:33:06 +02:00
shenleban tongying
b223d9b0ff
fix: Wrong drawing logic for custom encoding characters ( #1150 )
...
fix https://github.com/WerWolv/ImHex/issues/1146
related
3a840c4ced
2023-06-21 00:30:26 +02:00
WerWolv
c8150f3261
impr: Make statistics format not suck a whole lot
2023-06-21 00:21:16 +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
25154dd450
build: Force enable exceptions and rtti
2023-06-18 14:42:48 +02:00
WerWolv
d9af85f458
impr: Split offset column into Start and End column in pattern data view
2023-06-18 12:23:47 +02:00
WerWolv
5f6bc2507c
impr: Make ImHex not use lots of CPU when waiting for conditions
2023-06-18 10:18:58 +02:00
WerWolv
c2e023f567
fix: Pattern editor console scrolling back to the top constantly
2023-06-16 22:17:01 +02:00
WerWolv
90a576c3c7
fix: Highlighting and updating of the new console not working well
2023-06-14 10:35:23 +02:00
WerWolv
0e5371b298
fix: Properly handle multithreading for new pattern console
2023-06-14 06:57:43 +02:00
WerWolv
dd832bfa7e
ui: Make pattern editor console use another text editor
2023-06-13 22:58:57 +02:00
WerWolv
3b514003f8
fix: Pattern editor drag bar not always getting dragged correctly
2023-06-12 08:55:30 +02:00
WerWolv
7de367a944
impr: Properly allow multi-threaded logging without messing up output
2023-06-12 08:24:36 +02:00
WerWolv
ef1d831158
impr: Better UI/UX of the new debugger
2023-06-11 22:00:49 +02:00
WerWolv
da137b3e3b
feat: Allow pattern editor console to be resized
2023-06-11 21:41:24 +02:00
WerWolv
03673b5846
feat: Added basic Pattern Language debugger
2023-06-11 21:41:11 +02:00
WerWolv
34732a1ee7
fix: Corrected some memory leaks
2023-06-11 10:47:17 +02:00
KOLANICH
e8ca139246
fix: Remove unused member variable in HexEditor class ( #1129 )
...
Fixes `error: private field 'm_grayZeroHighlighter' is not used
[-Werror,-Wunused-private-field]`
2023-06-11 00:49:34 +02:00
WerWolv
ef9cb31204
patterns: Updated pattern language
2023-06-11 00:08:34 +02:00
WerWolv
e90e414d5a
impr: Show infinity icon in pattern editor view when pattern limit is disabled
2023-06-10 15:09:20 +02:00
WerWolv
a485a0bc3a
fix: Crash when loading files in some cases
2023-06-08 17:02:28 +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
99831a66a7
feat: Added file handlers for .hexlyt and .hexproj files
2023-06-06 21:35:13 +02:00
WerWolv
456895a6a6
fix: Various pattern drawer issues
2023-06-06 11:29:58 +02:00
WerWolv
1e2cf87532
fix: Properly clear pattern editor when all providers are closed
2023-06-06 10:36:02 +02:00
WerWolv
48022bc295
fix: Bad formatting of array chunks in pattern data view
2023-06-06 10:06:54 +02:00
Sergei Rebrov
b4ac46f719
impr: Set currently selected address in selection popup ( #1125 )
...
Set the Begin field to the current selected address
2023-06-06 08:22:10 +02:00
WerWolv
44bbbb03af
fix: Various pattern visualizer issues
...
Closes #1119
2023-06-06 08:20:58 +02:00
WerWolv
b8457439a4
fix: Crash when loading custom encodings
2023-06-05 16:56:50 +02:00
WerWolv
c690f7627f
fix: Bad sentence wrapping in advanced provider information popup
2023-06-05 15:36:47 +02:00
WerWolv
849e4ea370
feat: Make paths in about page clickable
2023-06-05 13:50:55 +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
60a95eddd7
fix: Crash due to uninitialized data visualizer in hex editor
2023-06-05 09:45:03 +02:00
WerWolv
7c23b215ba
impr: Allow detached tools to always be rendered
2023-06-05 09:08:41 +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
e78c21cbfb
impr: Use better icons for favorites and filter text boxes
2023-06-04 22:52:36 +02:00
WerWolv
cc55e5ec74
fix: Added missing pattern data favorites lang entry
2023-06-04 18:41:58 +02:00
WerWolv
1134697b90
fix: Pattern filter RValue parsing
2023-06-04 18:35:44 +02:00
WerWolv
e518b8360c
feat: Allow patterns to be marked as favorite
2023-06-04 18:30:47 +02:00
WerWolv
244e34ab84
feat: Added pattern data filter field
2023-06-04 16:13:46 +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
6d19b33e32
fix: Don't require providers to be writable to save a project
2023-06-03 23:18:43 +02:00
WerWolv
aca949175d
impr: Disable advanced provider information popup if there are none
2023-06-03 15:57:47 +02:00
WerWolv
d2e455c4cb
fix: Intel hex provider not displaying data correctly
2023-06-03 15:53:55 +02:00
WerWolv
09dda0bc5e
feat: Added provider information to advanced provider tab tooltip
2023-06-02 14:44:19 +02:00
WerWolv
62ecfb0e0e
fix: Make sure crash backup doesn't end up in recents list
2023-06-02 11:03:44 +02:00
WerWolv
504c022f01
patterns: Added hex_viewer visualizer
2023-06-02 10:47:23 +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
ea756e620e
fix: Explicitely convert std::fs::path to std::string ( #1116 )
...
This should fix the current crash when opening a project on Windows
2023-05-28 11:36:08 +02:00
iTrooz
e599d31625
fix: Properly Check if crash.json has valid json, remove it otherwise ( #1117 )
2023-05-28 11:35:51 +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
paxcut
950760691c
fix: 3D Visualizer calculating normals incorrectly ( #1108 )
2023-05-26 09:01:16 +02:00
iTrooz
ee94870e83
fix: Do not loop over 'END' ImHexPath ( #1098 )
...
Really small issue, in Help->About->Imhex directories, there would be an
extra entry at the end because you seemed to loop over the
fs::ImHexPath::END entry
2023-05-25 09:27:10 +02:00
iTrooz
d2638c4f27
feat: Display titlebar buttons when not running borderless ( #1099 )
...
Tested on Linux (non-borderless) and Windows (borderless)
You may want to also test it just to be sure
2023-05-25 09:26:40 +02:00
WerWolv
320973c5ff
fix: Crash when sorting Value column
2023-05-24 21:05:14 +02:00
WerWolv
26eac61ddf
feat: Allow themes to set the background blur color
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
WerWolv
e32fc639c2
fix: Turning off blur again not working
2023-05-22 13:25:11 +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
iTrooz
91635346be
feat: Allow to remove recent providers with right click ( #1085 )
...
![image](https://github.com/WerWolv/ImHex/assets/42669835/648d2c8f-6518-4989-bc92-808898cb0f87 )
2023-05-22 13:22:18 +02:00
WerWolv
f81276f7e3
feat: Added support for transparent and blurry window styles
2023-05-22 12:00:35 +02:00
WerWolv
6b28828174
fix: Prevent horizontal scroll on welcome screen
2023-05-22 10:37:30 +02:00
WerWolv
2191eb14ae
impr: Cleanup hashes view a bit
2023-05-22 09:58:56 +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
f57d4f2f7a
impr: Manually sort file chooser popup list
2023-05-21 18:41:43 +02:00
WerWolv
446e0751a6
fix: Force entropy and type distribution graphs to always span the entire plot
2023-05-21 13:46:14 +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
1b88b3704d
feat: Allow layouts to be deleted again
2023-05-21 10:43:35 +02:00
WerWolv
6dbaac4283
impr: Make sure hex editor popups have their input focused
2023-05-21 10:35:14 +02:00
WerWolv
c02465b892
fix: Byte type and Entropy graph being shifted
2023-05-21 10:23:33 +02:00
WerWolv
f503a89f98
fix: Typo in IEEE754 tool
2023-05-20 21:49:45 +02:00
WerWolv
87621e9337
impr: Disable some Import...
options when the provider isn't writable
2023-05-20 21:23:15 +02:00
WerWolv
3219ba68de
impr: Better layout of ImHex subtitle on welcome screen
2023-05-20 21:20:32 +02:00
WerWolv
5d608603cb
fix: Selection in diff view being retained
2023-05-20 21:13:40 +02:00
WerWolv
11f55a7561
fix: File handles not being closed correctly
2023-05-20 18:07:15 +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
3cb8e37182
fix: Broken file open logic
...
Closes #1090
2023-05-20 11:52: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
4ad66365d0
fix: Crash when saving patches
...
Fixes #1077
2023-05-19 20:01:42 +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
Justus Garbe
5ef58cdf76
feat: Added bit and byte reverse and bit display data processor nodes ( #1082 )
...
#1081
2023-05-18 10:25:59 +02:00
WerWolv
a5b0a8614a
impr: Automatically re-evaluate pattern when changing provider and code sync is on
...
Closes #1078
2023-05-16 14:45:04 +02:00
WerWolv
e28f2dfea1
fix: Only 5 patterns per byte being highlighted
...
Fixes #1076
2023-05-16 14:41:02 +02:00
WerWolv
0dcfeaefb3
fix: Build when git commit hash or branch is not available
2023-05-16 12:02:17 +02:00
WerWolv
3bd4a3ba8b
impr: Better JSON error handling in many places
2023-05-16 11:33:00 +02:00
WerWolv
7e9b23de7d
impr: Improve network interface error handling
2023-05-16 11:20:46 +02:00
WerWolv
a758676b0d
fix: Change network interface port to 31337
2023-05-16 11:01:59 +02:00
WerWolv
636ed0095d
feat: Added new imhex/capabilities
network interface
2023-05-16 11:01:40 +02:00
WerWolv
c006062540
feat: Added basic network interface support
2023-05-15 11:30:24 +02:00
WerWolv
e685d65be8
fix: Scrolling not working correctly on welcome screen
...
Fixes #1071
2023-05-15 08:33:35 +02:00
WerWolv
ab67e274b2
fix: Hex editor editing value not updating correctly
2023-05-15 08:17:16 +02:00
WerWolv
7ec7e562d1
fix: Wrong editing values in hex editor in some circumstances
2023-05-14 22:52:47 +02:00
WerWolv
c50d52d0a6
fix: Crash when reading from modified bytes
2023-05-14 22:46:19 +02:00
WerWolv
2b765617ce
impr: Disallow saving pattern files if they're empty
2023-05-14 22:24:16 +02:00
WerWolv
d96fc6d41b
fix: Compilation on macOS
2023-05-14 21:50:58 +02:00
WerWolv
f40b5d9811
fix: Search button in numeric find option being active by default
2023-05-13 17:51:16 +02:00
WerWolv
d00fae03a9
fix: Diff table not being cleared when closing providers
2023-05-13 17:50:33 +02:00
WerWolv
3c4e1b2f27
impr: Various cleanup
2023-05-13 17:50:16 +02:00
WerWolv
6709baa710
patterns: Updated pattern language
2023-05-13 15:43:37 +02:00
WerWolv
aa1bf0b764
impr: Make about page resizable
2023-05-13 12:26:13 +02:00
WerWolv
a7327290ea
fix: Only save custom encoding to project file when necessary
2023-05-13 11:17:27 +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
0a7a190b04
impr: Added tooltips to pattern data view when name or value is too long
2023-05-12 08:49:08 +02:00
WerWolv
21d922113d
impr: Make sure to clear selections when all providers are deleted
2023-05-12 08:38:52 +02:00
WerWolv
b0876e1c35
impr: Move some options into a new Extras menu
2023-05-12 08:38:32 +02:00
WerWolv
18bc5de169
fix: Copy-as options not being disabled correctly
2023-05-12 08:38:07 +02:00
WerWolv
0321743f1e
fix: Missing save layout localization keys
2023-05-12 08:37:43 +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
2da89f4b9b
fix: Position of restore layout button being wrong with different scalings
2023-05-11 18:44:33 +02:00
iTrooz
2e73d74cea
impr: Open .hexproj files as projects when opened though the Open File option ( #1061 )
2023-05-11 12:38:22 +02:00
WerWolv
8f07f0f8ae
impr: Better look and feel of the welcome screen close button
2023-05-11 12:00:45 +02:00
iTrooz
b0ab8698ec
fix: Loading data processor nodes from project thowing errors ( #1065 )
...
This will correct the errors `cannot use operator[] with a string
argument with string[..]` when loading a project
2023-05-11 09:57:29 +02:00
WerWolv
50c3cf8272
build: Replace old interval tree in favour of custom libwolv one
2023-05-11 09:27:23 +02:00
WerWolv
5a6e5d2255
build: Switch to better interval tree implementation
2023-05-07 23:27:43 +02:00
classabbyamp
82f5900759
build: Added option to disable update checking ( #1036 )
...
This is aimed at use by linux distros, where package updates come from a
central location, and users shouldn't need to worry about updating ImHex
on their own. This disables parts of the ImHex UI that would not be
useful in that case.
Tested and confirmed that this works in both states of the of the
`-DIMHEX_DISABLE_UPDATE_CHECK` switch.
2023-05-05 22:03:45 +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
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
iTrooz
13a3942f8f
impr: Show an error message when ImHex can't open a file ( #1050 )
...
This PR does two correlated things:
- Show a generic error message (Failed to open provider) rather than a
file-specific message (Failed to open file) when a provider fails to
open
- Set the error to something more specific when opening a file fails
2023-04-30 18:37:22 +02:00
XorTroll
b0028b0e51
lang: Added Spanish translations ( #1042 )
...
This translates ImHex for the Spanish language
(made a new PR since I got a bit messed up on the other one, this was
faster to fix)
2023-04-21 17:44:36 +02:00
WerWolv
1e39f4354f
fix: Provider reader being broken
2023-04-20 13:46:44 +02:00
WerWolv
8245f3d4c9
build: Updated libwolv
2023-04-19 21:56:34 +02:00
WerWolv
6c122e5fbe
patterns: Updated to new API
2023-04-18 10:06:47 +02:00
WerWolv
7ae814f7fb
fix: Various localization issues
2023-04-17 22:18:50 +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
c32515bc44
impr: Clean up some more clang-tidy issues
2023-04-16 22:12:35 +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
18d5fd5d3e
fix: Commit link in about page not working correctly
2023-04-13 16:10:55 +02:00
WerWolv
2829bf2640
fix: New lines appearing in pattern editor when switching provider
2023-04-13 15:03:50 +02:00
WerWolv
ffafb05d3d
fix: Providers with the same name not being selectable in diff view
...
Fixes #1034
2023-04-13 15:03:14 +02:00
WerWolv
cf72b5ec5c
fix: Some shortcuts triggering twice
2023-04-12 19:50:03 +02:00
WerWolv
803b99f2a9
impr: Immensely improve provider read speeds
2023-04-12 19:21:48 +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
5512585cc5
fix: Make sure docs question request is always properly formatted
2023-04-10 23:05:44 +02:00
WerWolv
349b5da810
fix: Prevent constants view from growing past the size of the screen
...
Fixes #1025
2023-04-10 21:30:27 +02:00
WerWolv
e7494be5e7
fix: Last line of patterns going missing in projects with multiple files
...
Fixes #1012
2023-04-10 16:50:23 +02:00
WerWolv
87d0aae608
feat: Added selection range radio button to various views
...
Closes #1024
2023-04-10 14:08:21 +02:00
WerWolv
391c8acfe4
impr: Added path tooltips to accept pattern popup
2023-04-10 01:46:55 +02:00
WerWolv
dc77d81e1b
feat: Added documentation helper AI
2023-04-10 01:42:53 +02:00
WerWolv
00c9a92977
fix: Localization being broken in the content store
2023-04-10 01:42:28 +02:00
WerWolv
f9a08f5c11
feat: Allow custom alignment to be used in binary sequence search
2023-04-09 15:28:31 +02:00
WerWolv
70f3014390
fix: Some more popup rendering issues
2023-04-08 23:34:46 +02:00
WerWolv
d4ad457af1
fix: Crash when closing provider that was used in view provider
2023-04-08 21:07:57 +02:00
WerWolv
cb5d197700
impr: Added tooltips to icon buttons in bookmarks view
2023-04-08 21:07:41 +02:00
WerWolv
78e66f8959
feat: Added non-ranged and aligned search to sequence and value finder
2023-04-08 20:59:33 +02:00
WerWolv
f562260e42
fix: Build error again
2023-04-08 12:30:38 +02:00
WerWolv
21f38974a8
impr: Use smart pointers to allocate Views
2023-04-08 12:08:45 +02:00
WerWolv
dfca7e923c
feat: Make pins in data processor nodes more visible
2023-04-08 11:58:49 +02:00
WerWolv
6913598de4
fix: Build error
2023-04-08 11:58:12 +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
51e615095e
fix: Make sure placing a type through the Edit menu re-evaluates the pattern
2023-04-06 23:01:45 +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
1698f1599b
impr: Allow file chooser to open files using double click
2023-04-05 18:33:05 +02:00
WerWolv
24e584c77b
fix: Crash when trying to place pattern language variable through the Edit menu
...
Fixes #1013
2023-04-05 18:29:30 +02:00
WerWolv
7a4f909c68
fix: Disassembler arch names not correctly corresponding to their ids
...
Fixes #1010
2023-04-05 18:02:47 +02:00
WerWolv
3658d8d96e
fix: Disassembler not supporting any Capstone 5 features anymore
...
Fixes #1010
2023-04-04 23:08:10 +02:00
WerWolv
efe3227ef2
patterns: Updated pattern language
2023-04-04 09:34:50 +02:00
H1X4
aab8c88a96
feat: allow loading and saving pattern code via events ( #1004 )
...
Currently there is no way to save the pattern code progamically from a
plugin unless the builtin plugin is modified to add those events. This
pull request will be adding ability to load and save pattern code from
specified file.
2023-04-01 11:18:52 +02:00
Thomas
af18ca011b
fix: Modified bytes visually reverting back after saving ( #1003 )
...
Fix #988
Co-authored-by: Nik <werwolv98@gmail.com>
2023-04-01 11:18:03 +02:00
WerWolv
60efb6973b
fix: Filtering of long strings in find view not working correctly
2023-04-01 11:04:07 +02:00
WerWolv
cffd55bdda
fix: UTF-16BE search being broken
2023-03-31 22:20:00 +02:00
WerWolv
88e767aaaf
fix: Crash when loading big encoding files
2023-03-31 19:56:20 +02:00
WerWolv
d6cda43618
fix: Modified bytes visually reverting back after saving
2023-03-31 19:18:31 +02:00
WerWolv
3b229cd5cb
impr: Added path tooltips to entries in the file chooser popup
2023-03-31 19:17:27 +02:00
WerWolv
4da18d3630
fix: Custom encoding and text padding setting not applying to custom encoding column
...
Actually fixes #1005
2023-03-31 13:49:33 +02:00