1
0
mirror of synced 2025-01-07 20:21:37 +01:00
ImHex/plugins/builtin/source/content
paxcut 54f5bd1d80
feat: Added underwaved text functions (#1889)
### Problem description
Currently when errors are found the entire line where the error occurred
is highlighted and one has to look at the error message in order to find
where the error is located on the line. With this PR the line will no
longer be highlighted and the location of the error will be marked with
an red waved line under the error location. Hovering over the text where
the error occurred produces an error overlay so if several errors occur
on the same line they can all be seen separately.

### Implementation description
The definition of error marker was switched to include column and size
as well as line and message like before.
This change required changing the way view pattern editor draws the
error markers because the errors themselves don't have size information.
Also, a new errorHoverBoxes type was defined to help in the detection of
the floating error messages when error is hovered.

Note that the underwave code depends on having a monospaced. If font is
not monospaced the underwaved text can be short/long or displaced.


### Screenshots

![image](https://github.com/user-attachments/assets/f0b08e10-612c-404a-8863-d4f00054d198)


![image](https://github.com/user-attachments/assets/911fcacb-2a1e-431f-bbc8-8e05bcd61341)
2024-09-15 15:19:04 +02:00
..
data_processor_nodes impr: Run data processor in a worker task 2024-07-11 23:30:54 +02:00
helpers impr: Handle demangling of identifiers without leading underscore 2024-07-11 20:38:22 +02:00
pl_visualizers fix: Multiple issues causing visualizers to crash when used _slightly_ incorrectly 2024-07-10 20:50:58 +02:00
popups/hex_editor fix: Task names not displaying correctly anymore 2024-07-27 14:09:52 +02:00
providers fix: Reading entire file content of base64 file into memory not working 2024-08-20 20:27:08 +02:00
tools fix: Task names not displaying correctly anymore 2024-07-27 14:09:52 +02:00
tutorials impr: Code style improvements 2023-12-27 16:33:49 +01:00
views feat: Added underwaved text functions (#1889) 2024-09-15 15:19:04 +02:00
achievements.cpp fix: Ambiguous conversion to UnlocalizedString 2024-01-21 14:31:19 +01:00
background_services.cpp impr: Fix various issues with runtime-generated language strings 2024-08-03 11:32:17 +02:00
command_line_interface.cpp impr: Handle demangling of identifiers without leading underscore 2024-07-11 20:38:22 +02:00
command_palette_commands.cpp fix: Build issues due to unused variables 2024-01-21 21:39:50 +01:00
communication_interface.cpp refactor: Better interface for the event system 2023-12-08 10:29:44 +01:00
data_formatters.cpp feat: Added CSV, TSV and JSON as export options for Find results (#1673) 2024-06-18 20:57:55 +00:00
data_information_sections.cpp impr: Added data size widget 2024-05-19 10:21:54 +02:00
data_inspector.cpp fix: Misspelling of Endianness (#1609) 2024-03-28 22:25:28 +01:00
data_processor_nodes.cpp refactor: Split data processor nodes in several files (#1419) 2023-11-13 23:36:39 +01:00
data_visualizers.cpp impr: Further optimize ImGui text rendering 2024-06-27 17:09:20 +02:00
events.cpp impr: Make unsaved changes popup behave more like in other applications 2024-04-23 21:02:16 +02:00
file_extraction.cpp fix: Replace old defaults path system with a new one 2024-06-22 10:44:55 +02:00
file_handlers.cpp fix: Replace old defaults path system with a new one 2024-06-22 10:44:55 +02:00
global_actions.cpp impr: Make unsaved changes popup behave more like in other applications 2024-04-23 21:02:16 +02:00
init_tasks.cpp impr: Make all task names properly translatable 2024-07-27 16:29:06 +02:00
main_menu_items.cpp impr: Make all task names properly translatable 2024-07-27 16:29:06 +02:00
minimap_visualizers.cpp impr: Make the highlights minimap visualizer the default 2024-06-26 19:12:20 +02:00
out_of_box_experience.cpp fix: Sub windows being used incorrectly 2024-06-26 19:11:31 +02:00
pl_builtin_functions.cpp impr: Handle demangling of identifiers without leading underscore 2024-07-11 20:38:22 +02:00
pl_pragmas.cpp impr: Optimize includes in often used header files 2023-11-18 14:34:33 +01:00
pl_visualizers.cpp fix: Multiple issues causing visualizers to crash when used _slightly_ incorrectly 2024-07-10 20:50:58 +02:00
project.cpp fix: Remove accidentally committed test code 2024-06-22 23:03:54 +02:00
providers.cpp fix: Don't try to compile process memory provider into Web build 2024-06-07 20:32:04 +02:00
recent.cpp impr: Make all task names properly translatable 2024-07-27 16:29:06 +02:00
report_generators.cpp impr: Optimize api includes 2023-11-30 11:23:12 +01:00
settings_entries.cpp impr: Fix various issues with runtime-generated language strings 2024-08-03 11:32:17 +02:00
themes.cpp build: Updated ImGui, libfmt and libyara 2024-07-01 22:00:08 +02:00
tools_entries.cpp feat: Added simple HTTP request tool 2024-01-04 00:38:21 +01:00
ui_items.cpp impr: Fix various issues with runtime-generated language strings 2024-08-03 11:32:17 +02:00
views.cpp impr: Allow views to opt out of having their open state saved 2024-05-19 21:51:55 +02:00
welcome_screen.cpp impr: Make all task names properly translatable 2024-07-27 16:29:06 +02:00
window_decoration.cpp fix: Sidebar panels not being resizable anymore properly 2024-07-16 18:15:28 +02:00
workspaces.cpp feat: Allow workspaces to be deleted the same way as layouts 2024-02-28 22:10:48 +01:00