Anders Jenbo
cf9b5ae79d
Split up graphics settings initializers
4 years ago
Adam Heinermann
1484b4d8cf
Implement Discord rich presence ( #3711 )
4 years ago
Gleb Mazovetskiy
401d0ff33f
DiabloUI: Handle mouse wheel in SDL 1.2
4 years ago
obligaron
467ed9dd9d
Fix page down/up don't wrap in settingsmenu
4 years ago
Andrew James
5046b1288d
Apply clang-tidy configuration to (some of) ui_item.h ( #3719 )
4 years ago
obligaron
8a235186f2
Settingsmenu: Clean up UI-Resources before switching options that require RecreateUI
4 years ago
obligaron
b5ab9758d0
Replace gbSpawned with gbIsSpawn
4 years ago
obligaron
721e05d5e0
Add DrawStringWithColors support to UiListItem
4 years ago
obligaron
78c0ec1f49
Pass viewportSize to UiList constructor and calculate height from it
4 years ago
Gleb Mazovetskiy
7e1fea6f76
clang-format all files in {Source,test}/
...
Also includes a few manual tweaks to comments and newlines for better results.
Co-authored-by: Anders Jenbo <anders@jenbo.dk>
4 years ago
obligaron
55dea2e39e
Introduce UiFlags::NeedsNextElement
4 years ago
obligaron
5b43d047c6
UiListItem support disabled elements
4 years ago
obligaron
918122ecb1
UiListItem can have individual UiFlags
4 years ago
obligaron
adfdb1e54f
Refactored UiList ViewPort Logic
4 years ago
Anders Jenbo
799f1763af
Performce UTF8 aware limited string copies
4 years ago
Gleb Mazovetskiy
b8affd5fe5
Fix a few build warnings
4 years ago
Gleb Mazovetskiy
e9a9daa794
DrawString: Stop allocating
...
Switch to a state-machine UTF-8 decoder from the branchless one.
This allows us to avoid copying the string on every `DrawString` call.
4 years ago
Gleb Mazovetskiy
3d308983a8
Migrate to libmpq
...
libmpq is a much simpler alternative to StormLib for reading MPQ archives.
We use our own fork of libmpq: https://github.com/diasurgical/libmpq
Impact:
* DevilutionX is now a lot more portable. Unlike StormLib, libmpq only
needs platform-specific code for Windows.
* Locks around file access **removed** (instead we duplicate the file descriptor for streamed audio only).
* RAM usage is **300 KiB** lower than StormLib.
* Stripped release linux_x86_64 binary is **32 KiB** smaller.
* Amiga build now hangs instead of crashing.
4 years ago
Anders Jenbo
fdd5d2c0d6
Make start screen behave more in line with other similar menus
...
Double clicking a menu list was not intuitive and could leave some
people confused about how to progress from the very first screen.
This is unfortunatly more important then having a nice preview when
using arrow keys to high light the other option :(
4 years ago
Anders Jenbo
73e749f491
Adjust dialog font metrics
4 years ago
staphen
ffbbcc6d62
Support unencrypted multiplayer games with no password
4 years ago
Anders Jenbo
16ef261270
[touch] Do not require double clicks when using touch
4 years ago
obligaron
95b7380ae9
Startup game (diablo or hellfire) can be selected.
4 years ago
obligaron
8dc1829ac0
Remember last selected hero
5 years ago
Anders Jenbo
4dd8b121ec
Replace TTF with PCX font
5 years ago
Anders Jenbo
70cff81547
Implement backspace for UTF-8 strings
5 years ago
Anders Jenbo
7959b04573
SDL1 Unicode input support
5 years ago
Anders Jenbo
704a04ae4d
Add support for Unicode fonts
5 years ago
Anders Jenbo
7771a08d03
Translatable mainpanel
5 years ago
Anders Jenbo
fa3499432f
Update game font
5 years ago
Vladimir Olteanu
d4d89077cd
Don't free PalSurface when it was obtained from SDL_GetVideoSurface
5 years ago
Vladimir Olteanu
aab7bf6e91
Make Palette a unique ptr
5 years ago
Anders Jenbo
7169882b1f
✨ Implement new font rendering
5 years ago
Anders Jenbo
7cb73a6717
Minimize impact of NOSOUND
5 years ago
Juliano Leal Goncalves
20d356a6eb
♻️ Leverage 'Point' in art_draw functions
5 years ago
Vladimir Olteanu
2d4a205fef
Introduce SDL::CreateRGBSurfaceWithFormat
5 years ago
qndel
ad6f9cb8e5
fix menu click offset
5 years ago
ephphatha
8930b789d6
Rename UiType members to follow naming convention
...
Convention seems to be that scrollbar is treated as a single unhyphenated word so the UiScrollbar class was renamed to match.
5 years ago
ephphatha
0575716eac
Rename UiFlags members to group related options
5 years ago
ephphatha
bd140142c3
Convert UiType to a scoped enum
5 years ago
ephphatha
7d93cada67
Refactor UiItemBase and derived types to reduce duplicate constructors
...
Using optional arguments where possible so that all use cases can share the same constructor. Also moving member initialisation to the initialiser list syntax as this makes it clear that the derived class is only setting properties on that class, leaving the parent constructor to initialise members of the parent class.
5 years ago
ephphatha
4ad53232a0
Convert the UiFlags enum to a scoped enum type
...
Replace operator&& with named function
5 years ago
Anders Jenbo
a19e7b2a3b
Remove some more use of miniwin
5 years ago
Anders Jenbo
3ffedb7a69
💄 Apply code style to src
5 years ago
Anders Jenbo
b591824182
💚 Fix NOSOUND build
5 years ago
Vladimir Olteanu
ed9b105299
DiabloUI: make UiArtText follow mutating char*
5 years ago
JoBergeron
be3f1ba928
Pause game and mute music when game window loses focus ( #2337 )
5 years ago
Anders Jenbo
730c0750e7
Apply clang-tidy to code
5 years ago
Vladimir Olteanu
c57560674e
Use smart pointers for UI items
...
vector::push_back(new Foo(...)) leaks if resizing fails
5 years ago
ephphatha
08ae390643
Add explicit casts for some implicit conversions
...
Some of these were triggering multiple warnings due to casts applied at times which forced potentially truncating operations.
5 years ago