Commit Graph

4326 Commits (396b2d7832746bc8a1ae6ba6d34164e25f4fe27f)

Author SHA1 Message Date
lethosor 396b2d7832
Adapt tests to dynamically-generated field info
No need to freeze the field info tables anymore
2023-08-12 21:59:14 -04:00
lethosor fc6d4caa8e
Dynamically generate field info in __index
Constructing the complete tables when the types were initialized made it
impossible to populate the "type" field, because not all types had been added to
the global type tables yet.
2023-08-12 20:18:22 -04:00
lethosor 4a9a83daa5
Expose more fields, refactor 2023-08-12 20:01:03 -04:00
lethosor 29f99733fe
Add tests 2023-08-12 19:04:51 -04:00
lethosor 92549f3c56
Add _fields table to struct types 2023-08-12 19:04:49 -04:00
lethosor 0a5e914a65
Add struct_field_info_extra::original_name field for globals 2023-08-12 01:19:18 -04:00
lethosor 351dfa84c2
Remove obsolete STATIC_FIELDS_GROUP check 2023-08-12 01:17:44 -04:00
DFHack-Urist via GitHub Actions 4aaf625f4d Auto-update submodules
library/xml: master
scripts: master
2023-08-12 01:49:06 +00:00
Myk Taylor 8d8c139ccb
don't add keys as text when ctrl or alt are pressed 2023-08-11 12:54:49 -07:00
Myk Taylor fa22f9521a
never suppress sdl key events when modifier keys are active 2023-08-11 12:54:18 -07:00
Myk e8a2ac68fe
Merge pull request #3662 from lethosor/fix-unknown-global-field-ref
Fix crash in df.global:_field() when global address is unknown
2023-08-11 10:38:12 -07:00
DFHack-Urist via GitHub Actions 3a143e0601 Auto-update submodules
library/xml: master
scripts: master
2023-08-11 07:12:32 +00:00
lethosor 6bd0819635
Fix crash in df.global:_field() when global address is unknown
and add a test
2023-08-11 02:31:54 -04:00
lethosor 34ddf6bed7
Merge remote-tracking branch 'lethosor/memscan-funcs' into develop 2023-08-11 01:38:15 -04:00
lethosor ea43d6c801
get_code_segment(): update check for DF executable on Linux 2023-08-10 15:06:45 -04:00
lethosor 0ac7d23bcf
Add memscan.read_global_table() and memscan.read_c_string() 2023-08-10 15:06:24 -04:00
lethosor 46499a66cc
Add cxx_demangle() and Lua wrapper 2023-08-10 15:01:19 -04:00
Myk fdf878c3b9
Merge pull request #3655 from myk002/myk_banner
[BannerPanel] use square brackets instead of color blocks
2023-08-09 17:51:26 -07:00
DFHack-Urist via GitHub Actions ca71c8c5f8 Auto-update submodules
library/xml: master
2023-08-09 07:13:34 +00:00
DFHack-Urist via GitHub Actions 6bd7d97625 Auto-update submodules
library/xml: master
scripts: master
2023-08-08 07:12:52 +00:00
Myk 970babe77c
Merge pull request #3654 from myk002/myk_mod_reload
ensure active mod scripts are properly reloaded
2023-08-07 19:39:39 -07:00
Myk Taylor 99517fcd81
use square brackets instead of color blocks 2023-08-07 17:20:58 -07:00
Myk Taylor 62a1bd6970
ensure active mod scripts are properly reloaded 2023-08-07 17:18:00 -07:00
Myk Taylor 8bff1399d4
add functions to Panel in addition to attributes 2023-08-07 17:02:55 -07:00
Myk Taylor 5fbff18d64
correctly fire on_resize_end events from Panel 2023-08-07 16:01:56 -07:00
Myk Taylor 8c166935d5
factor banner out into reusable panel class 2023-08-07 12:40:48 -07:00
Myk Taylor 03edea8257
add focus string support for legends mode 2023-08-07 02:50:37 -07:00
DFHack-Urist via GitHub Actions 386608fa02 Auto-update submodules
library/xml: master
scripts: master
2023-08-07 07:13:17 +00:00
Myk 30befab78f
Merge pull request #3644 from myk002/myk_trade
remove caravan_buying param from getValue call
2023-08-06 23:57:07 -07:00
Myk Taylor db48e0eba0
remove caravan_buying param from getValue call
the identity of the selling party doesn't actually affect the value!
2023-08-06 17:38:34 -07:00
DFHack-Urist via GitHub Actions a7129cad04 Auto-update submodules
library/xml: master
scripts: master
2023-08-06 07:12:09 +00:00
DFHack-Urist via GitHub Actions 5e1854edae Auto-update submodules
library/xml: master
scripts: master
2023-08-05 07:11:36 +00:00
DFHack-Urist via GitHub Actions 1864090bda Auto-update submodules
library/xml: master
scripts: master
2023-08-05 02:56:08 +00:00
Kelly Kinkade ba0df78233 DataIdentity support for `std::future<void>` 2023-08-04 20:00:29 -05:00
Myk 9bf00904eb
Merge pull request #3632 from myk002/myk_xml
allow the reusable workflows to build xml-dump-type-sizes
2023-08-04 17:09:29 -07:00
Myk Taylor 0ef1a475e4
allow code to be generated even when the library isn't being built 2023-08-04 16:43:58 -07:00
lethosor 47b4773786
df.new(): catch errors thrown by allocate()
This can include DFHack::Error::VTableMissing exceptions if the vtable of a
member field is unknown.

Fixes #3627
2023-08-04 17:22:20 -04:00
DFHack-Urist via GitHub Actions f507bd7e38 Auto-update submodules
library/xml: master
2023-08-04 20:22:58 +00:00
Myk Taylor a6de9a21fa
enable most core tests 2023-08-04 10:11:28 -07:00
DFHack-Urist via GitHub Actions 1cf3f62237 Auto-update submodules
library/xml: master
2023-08-04 17:10:51 +00:00
DFHack-Urist via GitHub Actions 4c2e7721e1 Auto-update submodules
library/xml: master
scripts: master
2023-08-04 07:12:54 +00:00
lethosor 5c4175e3c3
Update xml 2023-08-02 22:58:09 -04:00
lethosor 8b786b4344
Forward-declare types only used in DataIdentity.cpp 2023-08-02 00:15:27 -04:00
lethosor 2f42745175
Add identity_traits<condition_variable>, add macro for opaque identities 2023-08-02 00:15:27 -04:00
lethosor eb12ff17f6
Refactor: move static identity_traits to their own file, simplify field defs
DataStaticsFields.cpp used to contain identity_traits specializations for
primitive and opaque STL types, as well as macros used for the generated struct
field definitions. Only one of these were actually used in any compilation unit,
and the identity_traits definitions were hidden behind a guard to prevent them
from being compiled at all when building the struct field definitions.

Now, the identity_traits specializations live in their own file,
DataIdentity.cpp (matching their declarations, which live in DataIdentity.h).
This speeds up build times because modifying these specializations no longer
requires rebuilding all of the field definitions unnecessarily.
2023-08-02 00:15:26 -04:00
lethosor d0250ae426
Update allocator_try_assign() to match behavior of fstream allocator for non-copyable types
Looks like the choice we have made here previously is to return NULL if
attempting to allocate types that we cannot allocate.
2023-08-02 00:15:26 -04:00
lethosor 6fbb22e912
Add missing instantion for identity_traits<std::mutex>, refactor code shared with fstream identity 2023-08-02 00:15:26 -04:00
lethosor 7c4d9364a2
Make allocator_fn compile for non-copy-assignable types like std::mutex 2023-08-02 00:15:26 -04:00
lethosor e5bc4b3221
Add identity for std::mutex 2023-08-02 00:15:25 -04:00
DFHack-Urist via GitHub Actions a299f0b5fb Auto-update submodules
library/xml: master
scripts: master
2023-08-01 06:33:09 +00:00