Xavier Del Campo Romero
c5f04adaea
wip3
2023-04-07 02:56:36 +02:00
Xavier Del Campo Romero
850ed93367
wip2
2022-12-08 17:00:23 +01:00
Xavier Del Campo Romero
02febc7367
Add tests for transport
2022-11-11 00:37:37 +01:00
Xavier Del Campo Romero
9e1f1069cc
WIP
2022-11-01 16:26:16 +01:00
Xavier Del Campo Romero
28d624a7b8
unit.h: remove unused constant MAX_UNIT_DIRECTIONS
2022-09-26 02:25:18 +02:00
Xavier Del Campo Romero
b79ccb900a
gui/line_edit: Allow setting input filters
2022-09-26 02:24:46 +02:00
Xavier Del Campo Romero
98aa3ceb13
Swap U offset for idle/pressed cursor sprites
...
Since the cursor is mostly idle, it makes sense to set its sprite as
the default.
2022-09-26 02:23:23 +02:00
Xavier Del Campo Romero
bd3e8f39a7
BUILD-win9x.md: Use -Os for third-party libraries
2022-09-26 02:21:16 +02:00
Xavier Del Campo Romero
cc1278e0b6
net: Relocate source files for consistency
2022-09-24 06:42:02 +02:00
Xavier Del Campo Romero
b4c08b585c
net.h: Add missing extern "C"
2022-09-23 04:39:36 +02:00
Xavier Del Campo Romero
e6ae88aa87
input.c: do not fail on input_render
...
Implementation is still incomplete, and should not crash the
application.
2022-09-23 04:38:33 +02:00
Xavier Del Campo Romero
eed4687120
join_menu.c: Update serial/IPv4 GUI menus
2022-09-23 04:38:33 +02:00
Xavier Del Campo Romero
6f5058c584
ps1/net.c: return 0 on net_init
...
Even if the implementation is not finished yet, this will avoid the
program from crashing on startup.
2022-09-23 04:38:33 +02:00
Xavier Del Campo Romero
8435b3f5fd
net: Implement net_available
2022-09-23 04:38:33 +02:00
Xavier Del Campo Romero
b108afb6e7
net: Implement net_serial_devices
...
This function provides a platform-specific list of serial devices that
can be accessed.
2022-09-23 04:38:20 +02:00
Xavier Del Campo Romero
26692e8cb9
keyboard: Add KEYBOARD_KEY_SLASH
2022-09-23 04:20:57 +02:00
Xavier Del Campo Romero
f8c74babda
label.c: Set empty text by default
...
This will avoid crashing the application on rendering due to
uninitialized labels.
2022-09-23 04:20:13 +02:00
Xavier Del Campo Romero
9e308d97d9
gui.c: Remove unneeded condition
...
Even if neither hcentered or vcentered are used, GUI element position
must be determined by that of its parents.
2022-09-23 04:18:20 +02:00
Xavier Del Campo Romero
68ccd085fc
gui.c: Fix minor const-correctness issues
2022-09-23 04:17:44 +02:00
Xavier Del Campo Romero
d989dc6f49
gui: Allow elements to be hidden
...
When a GUI element is hidden, no rendering or updating is done to it or
its children. This can be useful to define a complex GUI tree structure
that changes under specific conditions, without redefining it.
2022-09-23 04:15:55 +02:00
Xavier Del Campo Romero
d0089e7ddf
gfx: Provide functions for fullscreen handling
2022-09-23 04:12:56 +02:00
Xavier Del Campo Romero
9d3e754f36
Implement checkbox GUI element
2022-09-23 04:12:07 +02:00
Xavier Del Campo Romero
467f09e952
net: Group events into struct
2022-09-21 18:27:58 +02:00
Xavier Del Campo Romero
85d4af0266
gui: fix wrong logic on update/render/deinit
...
The older implementation caused some elements to be
update/rendered/deinitialized more than once per call. For example,
considering the following tree of GUI elements:
A
B
C
D
E
The older implementation would update/render/deinitialize C and E more
than once, as shown below:
Update A
Update B
Update C
Update D
Update E
Update C
This was because a GUI element was acting on its siblings, but the
siblings would also act on theirs, causing the extra calls.
OTOH, as an additional improvement, no nested call is now required for
siblings.
2022-09-21 18:14:44 +02:00
Xavier Del Campo Romero
3eef29c327
menu: Implement join_menu
2022-09-20 17:34:25 +02:00
Xavier Del Campo Romero
8f9737b776
Implement GUI line edit
2022-09-20 17:34:25 +02:00
Xavier Del Campo Romero
e3356fde2d
gui: Implement gui_deinit
2022-09-20 17:34:25 +02:00
Xavier Del Campo Romero
84c834c000
Implement net component
2022-09-20 17:34:21 +02:00
Xavier Del Campo Romero
f42f5f69c8
Implement FindENET.cmake
...
This library will be later used for networking over UDP/IPv4 in future
commits.
2022-09-20 17:22:45 +02:00
Xavier Del Campo Romero
4c5630b0d4
Remap calls to pad/mouse/keyboard to input
2022-09-20 16:56:30 +02:00
Xavier Del Campo Romero
684587a3c3
Implement input component
...
It is required to redirect keyboard input (both physical or not) when
a GUI line edit is focused. This means other components cannot be
activated on key presses.
Therefore, this new component is meant as a higher-level abstraction
compared to the `keyboard`/`pad`/`mouse` components, which:
- Implements the same APIs provided by `keyboard`, `mouse` and `pad`.
- Returns the same results as the APIs above if no GUI element is
focused, no input otherwise.
Note: replacing calls to `keyboard`/`pad`/`mouse` with `input` will be
implemented in a future commit.
2022-09-20 13:52:14 +02:00
Xavier Del Campo Romero
b8d3eff412
keyboard: Add new public functions
...
These will be used by future commits.
2022-09-20 13:52:14 +02:00
Xavier Del Campo Romero
39dc70c385
orig/LICENSE: Minor changes
2022-09-20 13:52:12 +02:00
Xavier Del Campo Romero
ade4a509e9
Minor code style fixes
2022-09-20 13:51:08 +02:00
Xavier Del Campo Romero
a3f167ee04
sdl-1.2: Remap missing keyboard keys
2022-09-20 12:30:06 +02:00
Xavier Del Campo Romero
481a312e76
keyboard_key.h: add more keys
2022-09-20 12:29:45 +02:00
Xavier Del Campo Romero
b8def012d5
sdl-1.2: Remap SDLK_ESCAPE to KEYBOARD_KEY_ESC
2022-09-16 20:35:04 +02:00
Xavier Del Campo Romero
76a49ba3d5
mouse.c: Reduce threshold
2022-09-16 20:33:39 +02:00
Xavier Del Campo Romero
da22c8d922
Split CMakeLists.txt for src
2022-09-16 20:29:47 +02:00
Xavier Del Campo Romero
7bc21417c5
Split res-related CMake functions into their own file
2022-09-16 14:28:53 +02:00
Xavier Del Campo Romero
a30aee8b90
CMakeLists.txt: bump minimum CMake version
2022-09-16 14:27:18 +02:00
Xavier Del Campo Romero
5829ef82c4
Use find_package for SDL libraries
...
CMake already distributes FindSDL*.cmake files for SDL and SDL_mixer,
which support custom prefixes via environment variables, removing the
need for ad-hoc logic in Win9x builds.
Also, according to FindSDL.cmake, #include <SDL.h> is the preferred way
for portability reasons, instead of #include <SDL/SDL.h>, which is the
option that has been used so far.
2022-07-23 04:23:05 +02:00
Xavier Del Campo Romero
37ee2c11f3
ps1.cmake: import PSXSDK using find_package
2022-07-23 04:23:05 +02:00
Xavier Del Campo Romero
538a03f160
README.md: Update documentation for Win9x builds
2022-07-23 04:23:05 +02:00
Xavier Del Campo Romero
f9e46c950f
ps1: Use exported target PSXSDK::PSXSDK
2022-07-23 04:23:05 +02:00
Xavier Del Campo Romero
127a21a34f
Implement FindPSXSDK.cmake
2022-07-23 04:23:05 +02:00
Xavier Del Campo Romero
8f3403dffa
Update FindSDL_gfx.cmake as of today's upstream
...
Ongoing PR:
https://gitlab.kitware.com/cmake/cmake/-/merge_requests/7475
2022-07-23 04:23:05 +02:00
Xavier Del Campo Romero
c37cd892a0
system/CMakeLists.txt: group common private dependencies into var
2022-07-23 04:23:05 +02:00
Xavier Del Campo Romero
79c0164c21
Create cdroot directory on common CMakeLists.txt
2022-07-23 04:23:05 +02:00
Xavier Del Campo Romero
7a6f5cd2e6
README.md: Document dependencies for Ubuntu builds
2022-07-23 04:16:57 +02:00