aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* net.h: Add missing extern "C"HEADmasterXavier Del Campo Romero2022-09-231-0/+9
|
* input.c: do not fail on input_renderXavier Del Campo Romero2022-09-231-2/+2
| | | | | Implementation is still incomplete, and should not crash the application.
* join_menu.c: Update serial/IPv4 GUI menusXavier Del Campo Romero2022-09-231-24/+119
|
* ps1/net.c: return 0 on net_initXavier Del Campo Romero2022-09-231-1/+1
| | | | | Even if the implementation is not finished yet, this will avoid the program from crashing on startup.
* net: Implement net_availableXavier Del Campo Romero2022-09-233-1/+13
|
* net: Implement net_serial_devicesXavier Del Campo Romero2022-09-234-0/+40
| | | | | This function provides a platform-specific list of serial devices that can be accessed.
* keyboard: Add KEYBOARD_KEY_SLASHXavier Del Campo Romero2022-09-233-2/+6
|
* label.c: Set empty text by defaultXavier Del Campo Romero2022-09-231-1/+3
| | | | | This will avoid crashing the application on rendering due to uninitialized labels.
* gui.c: Remove unneeded conditionXavier Del Campo Romero2022-09-231-3/+1
| | | | | Even if neither hcentered or vcentered are used, GUI element position must be determined by that of its parents.
* gui.c: Fix minor const-correctness issuesXavier Del Campo Romero2022-09-231-2/+2
|
* gui: Allow elements to be hiddenXavier Del Campo Romero2022-09-233-18/+32
| | | | | | 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.
* gfx: Provide functions for fullscreen handlingXavier Del Campo Romero2022-09-233-0/+22
|
* Implement checkbox GUI elementXavier Del Campo Romero2022-09-238-0/+127
|
* net: Group events into structXavier Del Campo Romero2022-09-213-16/+21
|
* gui: fix wrong logic on update/render/deinitXavier Del Campo Romero2022-09-211-11/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* menu: Implement join_menuXavier Del Campo Romero2022-09-209-5/+342
|
* Implement GUI line editXavier Del Campo Romero2022-09-2012-0/+304
|
* gui: Implement gui_deinitXavier Del Campo Romero2022-09-202-0/+14
|
* Implement net componentXavier Del Campo Romero2022-09-2014-0/+572
|
* Implement FindENET.cmakeXavier Del Campo Romero2022-09-201-0/+88
| | | | | This library will be later used for networking over UDP/IPv4 in future commits.
* Remap calls to pad/mouse/keyboard to inputXavier Del Campo Romero2022-09-2022-94/+195
|
* Implement input componentXavier Del Campo Romero2022-09-204-0/+237
| | | | | | | | | | | | | | | | 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.
* keyboard: Add new public functionsXavier Del Campo Romero2022-09-202-0/+83
| | | | These will be used by future commits.
* orig/LICENSE: Minor changesXavier Del Campo Romero2022-09-201-1/+1
|
* Minor code style fixesXavier Del Campo Romero2022-09-202-3/+1
|
* sdl-1.2: Remap missing keyboard keysXavier Del Campo Romero2022-09-201-2/+49
|
* keyboard_key.h: add more keysXavier Del Campo Romero2022-09-201-1/+5
|
* sdl-1.2: Remap SDLK_ESCAPE to KEYBOARD_KEY_ESCXavier Del Campo Romero2022-09-161-1/+1
|
* mouse.c: Reduce thresholdXavier Del Campo Romero2022-09-161-2/+2
|
* Split CMakeLists.txt for srcXavier Del Campo Romero2022-09-162-47/+48
|
* Split res-related CMake functions into their own fileXavier Del Campo Romero2022-09-162-109/+110
|
* CMakeLists.txt: bump minimum CMake versionXavier Del Campo Romero2022-09-161-1/+2
|
* Use find_package for SDL librariesXavier Del Campo Romero2022-07-2320-51/+37
| | | | | | | | | | 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.
* ps1.cmake: import PSXSDK using find_packageXavier Del Campo Romero2022-07-231-10/+1
|
* README.md: Update documentation for Win9x buildsXavier Del Campo Romero2022-07-231-1/+30
|
* ps1: Use exported target PSXSDK::PSXSDKXavier Del Campo Romero2022-07-236-2/+6
|
* Implement FindPSXSDK.cmakeXavier Del Campo Romero2022-07-231-0/+94
|
* Update FindSDL_gfx.cmake as of today's upstreamXavier Del Campo Romero2022-07-231-39/+17
| | | | | Ongoing PR: https://gitlab.kitware.com/cmake/cmake/-/merge_requests/7475
* system/CMakeLists.txt: group common private dependencies into varXavier Del Campo Romero2022-07-231-1/+2
|
* Create cdroot directory on common CMakeLists.txtXavier Del Campo Romero2022-07-234-3/+1
|
* README.md: Document dependencies for Ubuntu buildsXavier Del Campo Romero2022-07-231-0/+8
|
* CMakeLists.txt: Define rts as a C-only projectXavier Del Campo Romero2022-07-231-1/+1
| | | | | While it is true "extern C" is used on all headers, there is no need for CMake to check the C++ compiler.
* SDL-1.2: Implement X mirroring for quadsXavier Del Campo Romero2022-07-153-20/+48
|
* Import SDL_gfxXavier Del Campo Romero2022-07-155-1/+18
|
* Implement FindSDL_gfx.cmakeXavier Del Campo Romero2022-07-151-0/+106
| | | | | | | | | Surprisingly, as of today (July 2022) CMake ships with FindSDL*.cmake files for several SDL libraries such as SDL_mixer or SDL_image, but not for SDL_gfx, so one was created, based on FindSDL_mixer.cmake. Reference: https://gitlab.kitware.com/cmake/cmake/-/blob/8a3004d5c28c0ca0ac45f718b64ed3662e499c7a/Modules/FindSDL_mixer.cmake
* gui: Update elements in reverse orderXavier Del Campo Romero2022-07-151-2/+2
| | | | | This allows to calculate dimensions for containers with children containers in it.
* Deprecate memset(3) in favour of C99 compound literalsXavier Del Campo Romero2022-07-152-7/+3
|
* Allow children of gui_container be resized anytimeXavier Del Campo Romero2022-07-104-10/+32
| | | | | | | | | | | | | | So far, their position inside the container was determined when initializing the interface. However, if a child were resized afterwards, the container would not adjust its elements accordingly. Moreover, the implementation for gui_container relied on hacking the children's X/Y coordinates, which could only be done once. Now, two additional members have been added to gui_common so that specific X/Y offset can be determined by the parent, additionally to the traditional rules followed by gui_coords. Despite the extra memory footprint, it now allows containers to set specific X/Y offsets for their children on every game cycle.
* Implement join/host and game cfg menusXavier Del Campo Romero2022-07-076-72/+341
|
* Implement system_can_exitXavier Del Campo Romero2022-07-073-0/+13
|