Commit graph

209 commits

Author SHA1 Message Date
smallmodel
f16bec1e0a
Remove #pragma once from uimessage
Some checks failed
Build branch / build-all (push) Failing after 1m13s
CodeQL / Analyze (push) Has been cancelled
2025-03-24 22:16:53 +01:00
smallmodel
0b590ab147
Add a way to create a message box 2025-03-11 23:32:22 +01:00
smallmodel
c87c242098
Add a getter for m_font 2025-03-11 23:31:16 +01:00
smallmodel
0080f55ef8
Round to integer to avoid blurry text
Some checks failed
Build branch / build-all (push) Failing after 20s
CodeQL / Analyze (push) Has been cancelled
2025-03-02 14:12:54 +01:00
smallmodel
4c06dd7107
Make UColor constant 2025-01-07 00:40:11 +01:00
smallmodel
25f4d0199d
Use const UColor pointer 2025-01-07 00:32:03 +01:00
smallmodel
3bcd5cf308
Add UColor copy constructor 2025-01-07 00:26:40 +01:00
smallmodel
fe42511c54
Changed the color of UIListBox elements
Some checks failed
CodeQL / Analyze (push) Waiting to run
Build branch / build-all (push) Failing after 16s
2025-01-03 22:08:59 +01:00
smallmodel
32f507ce15
Fix pulldown menu container using the wrong foreground color 2025-01-03 22:08:26 +01:00
smallmodel
e6848a3ab0
Fix the window sizer losing focus when rapidly dragging the mouse
This would lead to annoyances when trying to resize the window as the window sizer would lose focus
2024-12-20 20:13:05 +01:00
smallmodel
011f49616b
Fix the improper focus and activation of pulldown menus 2024-12-20 19:35:27 +01:00
smallmodel
6f686cb7fa
Check if the renderer is loaded instead of checking if it's registered
Some checks failed
CodeQL / Analyze (push) Waiting to run
Build branch / build-all (push) Failing after 43s
2024-12-06 00:45:18 +01:00
smallmodel
28bdd1b2b3
Made the renderer modular and loadable
This removes coupling between the renderer and UI/client functions. An option USE_RENDERER_DLOPEN was added to specify whether a renderer module should be compiled and loaded, instead of integrating the renderer into the executable directly. This opens the door for a new renderer
2024-12-06 00:15:19 +01:00
smallmodel
35f40e949b
Properly clear UI resources when shutting down the UI 2024-12-05 23:31:38 +01:00
smallmodel
4f699f3b58
Add support to compile renderergl2 (currently unimplemented) 2024-12-01 19:21:07 +01:00
smallmodel
6fe1e86b31
Automatically scale UI elements for high resolutions
This fixes UI elements being tiny on high resolutions like 4K. Now most UI elements will scale automatically with resolutions above 1920x1080.
2024-11-30 22:40:00 +01:00
smallmodel
59d03ff6f0
Return a virtual scale with the correct ratio if scale variable is set
This prevents the widget from being stretched out on widescreen, currently only the compass uses scalecvar
2024-11-18 21:13:43 +01:00
smallmodel
96ca9c20e4
Rework fade sequence and make it work 2024-11-13 19:40:31 +01:00
smallmodel
23a035e2ca
Use a default value for maxlen and bVirtualScale for Print 2024-11-09 19:38:15 +01:00
smallmodel
2b4aef4ea6
Add a newline to Cmd_Stuff
Next commands weren't correctly appended
2024-10-26 13:28:49 +02:00
smallmodel
a993b8d352
Specify "Fixed" instead of "Added" as it's a bug that was fixed 2024-10-26 00:34:50 +02:00
smallmodel
b7403347bb
Ignore the first responder if it's disabled so the UI doesn't get blocked by it 2024-10-26 00:30:42 +02:00
smallmodel
bf184fb719
Use #pragma once instead of #ifndef 2024-09-27 20:19:11 +02:00
smallmodel
facabc09f5
Don't set the label shader if the specified material name is considered empty (#364)
For labels linking to a variable for the shader, this prevents the label from still being rendered, drawing the tiled square grid (notexture)
2024-09-27 18:30:03 +02:00
pryon
fe0e5c1d9c Fix bug when multiple lines are joined together after copy-pasting text 2024-09-21 20:08:11 +02:00
pryon
5128d88722 Fix bug when deleting multiple lines doesn't actually remove everything selected 2024-09-21 20:04:57 +02:00
pryon
173ca3e58e Fix assertion failures on str operations 2024-09-21 20:02:58 +02:00
pryon
2a13fca737 Fix an off-by-one bug when selection points are determined 2024-09-21 20:01:03 +02:00
pryon
b3a9f4423b Fix crash when saving a file with no contents or with no name 2024-09-21 19:52:20 +02:00
pryon
62c24826e6 Silence some localization error console spam messages
This helps to reduce the number of `LOCALIZATION ERROR` messages in the console for strings that couldn't be translated anyway
2024-09-21 19:49:43 +02:00
pryon
a3d2c2c044 Properly free uipopup_describe instances 2024-09-21 19:46:32 +02:00
pryon
72409622ef Stop activating controls when their vertical scrollbar is hovered over
This fixes the annoyance of open windows (console, notepad) losing focus just by simply moving the mouse around
2024-09-21 19:43:18 +02:00
pryon
92190220aa Implement clipboard functionality 2024-09-21 19:32:23 +02:00
pryon
c316dc7b00 Fix incorrect line width calculation when tabs are present 2024-09-21 19:17:25 +02:00
smallmodel
f9d264058b
Use safe version of sprintf and strcpy 2024-09-20 23:08:53 +02:00
smallmodel
f2e32c737b
Fix the gap in the console between the bottom line and the text 2024-09-19 19:46:07 +02:00
smallmodel
8fc6b6e3c3
Correctly handle quick message and message mode for the chat window
This fixes the chat window not being put in quick message mode at all when intended, now it also correctly handle team/private message modes
2024-09-18 22:14:16 +02:00
smallmodel
9fc4c67187
Fix a crash when insep is 0 2024-09-13 19:05:30 +02:00
smallmodel
725561b655
Fix the usage of memory, strings, constant and parameters 2024-09-08 23:54:47 +02:00
smallmodel
3834f51d74
Fix GetNamedWidget() always returning the last valid widget
This is problematic when doing different logic when a widget doesn't exist, for example when loading a map, if the continue button doesn't exist then the game should continue automatically
2024-09-08 15:06:43 +02:00
smallmodel
ccb1465e17
Use a raw pointer instead of the str object
Original game checks for the NUL character using the line buffer (`c_str()`) directly instead of the str object's operator[], as this would cause an assertion failure because the str's length ignore the NUL character
2024-08-26 23:09:55 +02:00
smallmodel
d64e88451f
Fix compiler warnings
Note that in Dismiss(), checking for `this` is not necessary (original code was generated by the compiler)
2024-08-24 15:08:42 +02:00
smallmodel
864ea08393
Fix special characters not being handled properly
This fixes characters (signed character below 0) being replaced by '?' in UI text elements, like in the console
2024-07-27 23:41:12 +02:00
smallmodel
016e062fef
Fix UIReggedMaterial::ReregisterMaterial and UIReggedMaterial::GetMaterial
ReregisterMaterial() must register the material if it was registered before, and GetMaterial() must register the material if it hasn't been registered and return it
2024-07-24 21:10:46 +02:00
smallmodel
e5fb85ad08
Fix material not refreshing when it already has a shader.
This fixes #329 where the material (matching quick.tga) would be loaded only once without being able to change
2024-07-23 19:06:48 +02:00
smallmodel
eee0eaac4a
Process the "!" (not) syntax for enabledcvar
This fixes #265 where the mine detector icon wouldn't appear because it wants SP mode
2024-07-17 23:55:11 +02:00
smallmodel
535da856a4
When returning a cvar value, use the latched string if present 2024-07-17 23:43:00 +02:00
pryon
fa5a97031d Fix assignment of a temporary to a non-const reference error on GCC 2024-06-10 14:43:40 +02:00
pryon
6e454cdfb3 Fix subtle bugs and refactor in UIWindowManager 2024-06-10 14:26:38 +02:00
pryon
52f43a3aa6 Document OPM fix for center-justified UINotepad statusbar 2024-06-10 14:25:30 +02:00