1
0
mirror of synced 2024-11-25 16:20:23 +01:00
Commit Graph

289 Commits

Author SHA1 Message Date
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
ed9e463550 ui: Added diff view 2021-09-21 19:54:13 +02:00
WerWolv
a7ebf1f60e build: Adjust old file name in cmake 2021-09-21 03:20:17 +02:00
WerWolv
6ab0ec547c ui: Make footer items jump around less 2021-09-21 03:10:09 +02:00
WerWolv
26a0352851 tests: Fixed unit test compiling 2021-09-21 02:48:41 +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
WerWolv
c5cd6422c6 fix: Settings menu closing when changing language 2021-09-20 20:42:30 +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
01670e5e85 patterns: Ignore superfluous semicolons 2021-09-13 10:48:45 +02:00
WerWolv
82cc528c49 api: Fix loading of string array settings (Recent files) 2021-09-12 20:29:05 +02:00
WerWolv
1df64031c8 patterns: Fix bitfield member access 2021-09-12 20:29:05 +02:00
WerWolv
ea2d181741 utils: Fix file wrapper 2021-09-12 20:29:05 +02:00
WerWolv
132fc181cd patterns: Fix bitfields with unaligned sizes
Correction for #292
2021-09-12 14:28:13 +02:00
WerWolv
987840e480 sys: Fixed settings not initializing correctly 2021-09-12 13:59:23 +02:00
WerWolv
86096708da patterns: Fixed bitfields not respecting endian setting
Various other improvements. Fixes #292
2021-09-12 13:08:52 +02:00
WerWolv
635f0606e0 patterns: Fixed enums not counting properly 2021-09-11 23:14:22 +02:00
WerWolv
8396e40fa0 tests: Added initial test structure 2021-09-11 14:41:18 +02:00
WerWolv
a5274daeaa patterns: Fixed padding not padding 2021-09-10 22:12:37 +02:00
WerWolv
36f51c427b ui: Added "Quit ImHex" option to File menu 2021-09-10 21:48:51 +02:00
WerWolv
b3d102419b sys: Fixed opening custom protocols in the web browser 2021-09-10 21:42:35 +02:00
WerWolv
f96e529230 patterns: Fixed parent keyword 2021-09-10 21:00:18 +02:00
WerWolv
717f78ce7f patterns: Fix negative array sizes causing crashes 2021-09-10 17:33:02 +02:00
WerWolv
31ef6173a1 lang: Updated Italian translation. Thanks to @CrustySean 2021-09-10 15:30:49 +02:00
WerWolv
f0697679f4 sys: Add local search for plugins and resources on Linux 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
a8c9e96b72 fix: Inverted logic when checking for libmagic error 2021-09-09 01:56:48 +02:00
WerWolv
4cc637c0b2 sys: Finish up the online store 2021-09-08 17:22:54 +02:00
WerWolv
4b41ae6980 sys: Include correct file for size_t 2021-09-08 16:41:00 +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
d7707bae62 fix: Multiple definitions of literals 2021-09-06 23:08:02 +02:00
WerWolv
ee7c6a91a7 patterns: Add optimization for arrays of statically sized types 2021-09-06 20:35:38 +02:00
WerWolv
6879cf765f sys: Cleanup libmagic mess 2021-09-06 16:15:05 +02:00
WerWolv
f29febdc86 patterns: Fix unions causing crashes on cleanup 2021-09-03 10:30:40 +02:00
WerWolv
4b40546750 views: Add simple pattern, library and magics store 2021-09-03 02:34:40 +02:00
WerWolv
fcfaaacdcc patterns: Fix enum constant resolution 2021-09-03 02:33:45 +02:00
WerWolv
68d72eac16 sys: Move imhex path resolution away from utils 2021-09-03 02:33:15 +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
5d4b998be4 sys: Added missing optional header include 2021-08-31 20:03:08 +02:00
WerWolv
5f63db4a34 ui: Add first unifont plane by default 2021-08-31 15:22:00 +02:00