Ryan Heuer
8e459a4f2a
[glass] Field2d: Fix custom image padding to maintain aspect ratio ( #7648 )
2025-01-06 21:16:14 -08:00
sciencewhiz
7032de3d5d
[glass] Field2D: Change field picker to show JSONs first ( #7643 )
...
Too many people don't realize that glass/simgui field2d can load
pathweaver JSON field files since it's hidden.
2025-01-05 22:36:14 -08:00
Wispy
17a03514ba
[glass, simgui] Fix minimum widths of windows ( #7604 )
2025-01-01 15:20:35 -08:00
Peter Johnson
b6de7acbdb
[sim] GUI: Don't show Window menu if it has no contents ( #7432 )
2024-11-25 17:25:55 -08:00
Ryan Blue
8588b5e520
[glass] Revert "Storage: Store Value by value" ( #7333 )
...
This reverts commit 309b370223 .
Storage::GetChildArray never initializes the child array when the entry is new, so it returns invalid references.
2024-11-04 23:34:18 -07:00
Peter Johnson
e49d452e46
[glass] Context: Store storageRoots by value
2024-10-31 22:04:13 -07:00
Peter Johnson
5c0edc2410
[glass] Field2D: Store field objects by value
2024-10-31 22:04:13 -07:00
Peter Johnson
309b370223
[glass] Storage: Store Value by value
...
This is possible because std::map has stable value pointers.
2024-10-31 22:04:13 -07:00
Peter Johnson
f620141e0d
[wpiutil] Replace LLVM StringMap impl with std::map
...
As string_view operations on std::map<std::string> won't be integrated
until C++26, placeholder implementations are used which are less efficient
in a couple of situations (e.g. insert with hint).
2024-10-31 22:04:13 -07:00
Ryan Heuer
f7dddb8014
[glass] Add Alerts widget ( #7219 )
2024-10-16 13:45:56 -06:00
Tyler Veness
fad06ae1e7
Merge .inc files into headers ( #7215 )
2024-10-15 23:42:57 -07:00
Ryan Heuer
40caabea23
[glass] Align Field2d border and image padding ( #7214 )
2024-10-15 22:02:08 -07:00
Peter Johnson
2d6f02d15b
[glass] Check for struct descriptor size 0 ( #7192 )
...
This avoids a potential divide by 0.
2024-10-11 16:09:32 -07:00
Gold856
22f086aba8
Fix app icons on Windows ( #7116 )
...
The SysId icon has a bunch of weird artifacting and it's not transparent on Windows. Some of the other icons have issues as well and all of them are inconsistent. GIMP was used to regenerate all the icons from the PNGs, using PNG compression on all the layers.
2024-09-22 23:54:23 -07:00
Tyler Veness
554024767e
Fix errors from new cpplint.py ( #7105 )
2024-09-20 17:43:39 -07:00
Joseph Eng
1f3ef019ce
[wpiutil] Return wpi::expected from MemoryBuffer::GetFile ( #7069 )
2024-09-12 23:45:35 -07:00
Tyler Veness
d44b651558
[build] Make Protobuf optional in CMake build ( #7061 )
2024-09-12 23:44:19 -07:00
Jade
495c371ce7
[glass] NetworkTables provider: Add immediate flag to listener ( #7013 )
2024-08-31 09:44:52 -07:00
Ryan Blue
cf691f744f
[glass] Use type string constant in NTStringChooser ( #6992 )
2024-08-22 23:36:07 -07:00
Wispy
7d64d4e24c
[sim] Add GUI support for the REV PH ( #6704 )
2024-07-15 17:28:05 -07:00
Joseph Eng
d6b66bfa55
[wpiutil] Add remove_prefix() and remove_suffix() ( #6118 )
2024-06-04 21:01:52 -07:00
Wispy
e2545231b8
[glass] Save input after clicking away ( #6657 )
2024-05-25 09:19:52 -07:00
Ryan Blue
65f4505e3c
[wpimath] Add constraints support to ProfiledPIDController Sendable implementation ( #6354 )
2024-05-24 10:39:56 -07:00
Tyler Veness
d88c71ffdc
[wpiutil] Upgrade to fmt 10.2.1, add wpi::print ( #6161 )
...
We now use a wrapper (wpi::print) to catch exceptions since we can't patch
std::print() to not throw when we ultimately migrate to it.
fmtlib and std format/print throw the same exceptions and always have. We previously patched fmt::print() to not throw a write failure exception, but we can't do that for std::print(); wpi::print() is the migration plan.
2024-05-12 06:25:42 -07:00
Ryan Heuer
ac32f921f6
[glass] Add math expression input for NetworkTables numerical values ( #6530 )
2024-04-28 12:03:49 -07:00
Peter Johnson
74057543aa
[glass] Don't limit window name+label to 128 chars ( #6447 )
2024-03-18 14:28:00 -07:00
Peter Johnson
4b94a64b06
[glass] Fix FMS game data display and editing ( #6381 )
...
Also don't require Enter for editing game data or match time.
2024-02-18 16:29:58 -08:00
Chris Gerth
a70e83ae2e
[glass] Update field size defaults in Field2D.cpp ( #6298 )
...
Looks like the field length is longer in 2024. Used the onshape model to measure the size.
2024-01-23 21:28:17 -08:00
Peter Johnson
3928ed5647
[sim] Sim GUI DS: Add "Disconnected" state and start in it ( #6218 )
...
The default state for the DS in the simulated HAL is changed to disconnected.
The FMS view is now only editable in DS disconnected state.
This enables more robot and field-like testing of robot code, as the
alliance color and other parameters start in invalid states and are
only set when the DS connects.
2024-01-20 21:10:02 -08:00
Peter Johnson
4d109309c9
[glass] Reduce NT log level
2024-01-20 07:24:16 -08:00
Peter Johnson
ecf1755e3e
[glass] Default to 2024 field image ( #6225 )
...
Also relax field scale check a bit so 2024 field image passes.
2024-01-14 14:47:54 -08:00
Peter Johnson
7e3678b0a4
[glass] Fix Field2d position and scaling ( #6222 )
...
Also adds some border padding for the non-image case.
2024-01-13 21:09:02 -08:00
Peter Johnson
7c26bc70ab
[sysid] Load DataLog files directly for analysis ( #6103 )
...
Co-authored-by: Oblarg <emichaelbrnett@gmail.com >
2024-01-05 16:24:31 -08:00
Tyler Veness
f29a7d2e50
[docs] Add missing JavaDocs ( #6146 )
2024-01-04 08:38:06 -08:00
Peter Johnson
73c7d87db7
[glass] NTStringChooser: Properly set retained ( #6144 )
2024-01-03 09:38:10 -08:00
m10653
8aca706217
[glass] Add type information to SmartDashboard menu ( #6117 )
2024-01-01 11:58:13 -08:00
truher
ab309e34ef
[glass] Fix order of loading window settings ( #6056 )
2023-12-23 13:12:09 -08:00
m10653
43fb6e9f87
[glass] Add Profiled PID controller support & IZone Support ( #5959 )
2023-12-22 11:29:25 -08:00
Peter Johnson
f02984159f
[glass] Check for null entries when updating struct/proto ( #6059 )
2023-12-18 11:31:08 -08:00
Peter Johnson
14dcd0d26f
Use char instead of uint8_t for json::parse ( #5877 )
...
The uint8_t usage causes warnings on newer clang versions.
Add GetCharBuffer() to MemoryBuffer classes to make this easy.
2023-11-04 22:18:42 -07:00
Peter Johnson
83a7d33c47
[glass] Improve display of protobuf/struct type strings ( #5850 )
2023-10-30 20:29:29 -07:00
Oliver
cdf981abba
[glass] Fix position of data type in NT view ( #5840 )
2023-10-27 17:41:42 -07:00
Zhiquan Yeo
8a8e220792
[simgui] Add 'Invalid' option for AllianceStation ( #5820 )
2023-10-24 11:51:39 -07:00
Peter Johnson
23ea188e60
[glass] Add protobuf decode error log message ( #5812 )
2023-10-23 23:36:23 -07:00
Peter Johnson
cf54d9ccb7
[wpiutil, ntcore] Add structured data support ( #5391 )
...
This adds support for two serialization formats for complex data types:
- Protobuf for complex objects with variable length internals that need forward and backward wire compatibility (lower speed, more flexible)
- Raw struct (ByteBuffer-style) for fixed-length objects (higher speed, less flexible)
Deserialization can be done either by creating a new object (for immutable objects) or overwriting the contents of an existing object (for mutable objects).
Implementing classes should provide inner classes that implement the Protobuf or Struct interface (in Java) or specialize the wpi::Protobuf or wpi::Struct struct (in C++). It is possible for classes to implement both. If the class itself does not implement serialization, it's possible for third parties/users to provide an implementation instead.
Uses the Google protobuf implementation for C++ and the QuickBuffers alternative protobuf implementation for Java.
2023-10-19 21:41:47 -07:00
PJ Reiniger
210255bfff
[wpiutil] Update json to 3.11.2 ( #5680 )
2023-10-14 21:53:56 -07:00
Peter Johnson
741d166457
[glass] NT view: enhance array support ( #5732 )
...
- Break out array elements; this makes it easier to see array contents and
allows plotting individual array elements
- Provide array editor
2023-10-10 00:28:54 -07:00
Tyler Veness
66358d103e
Add menu items for online docs to GUI tools ( #5689 )
2023-09-29 17:25:28 -07:00
PJ Reiniger
dd5612fbee
[json] Add forward definition header ( #5676 )
2023-09-22 13:01:27 -07:00
Tyler Veness
5ab54ff760
Replace wpi::raw_istream with wpi::MemoryBuffer ( #5675 )
...
Instances of wpi::raw_istream were left that are reading incrementally
from file descriptors like USB devices.
2023-09-21 23:20:09 -07:00