Anders Jenbo
1409e604f5
Reduce string conversions
4 years ago
staphen
3546b41be0
Introduce NOEXIT build option to disable Quit Game options in menus
4 years ago
obligaron
b5ab9758d0
Replace gbSpawned with gbIsSpawn
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
f02264f69c
Implement settings menu
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
obligaron
851ed8d557
Start attract mode only if a intro is present
4 years ago
Anders Jenbo
34e6c200bb
Add Shareware indicator to Hellfire menu
4 years ago
obligaron
49c351d3e9
Allow playing intro in spawn if diabdat_mpq is present
4 years ago
obligaron
1d0f4cb13d
Add new Extras menu with the possibility to switch game
4 years ago
Anders Jenbo
7771a08d03
Translatable mainpanel
5 years ago
Anders Jenbo
7169882b1f
✨ Implement new font rendering
5 years ago
Anders Jenbo
21963add95
Clean up hellfire differences
5 years ago
ephphatha
0575716eac
Rename UiFlags members to group related options
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
Vladimir Olteanu
c57560674e
Use smart pointers for UI items
...
vector::push_back(new Foo(...)) leaks if resizing fails
5 years ago
Anders Jenbo
de4ced7e4f
Clang-tidy: readability-qualified-auto
5 years ago
Anders Jenbo
9e2206a673
Format code
5 years ago
arcas
6502a3ca4d
Adding resources for translation ( #1973 )
5 years ago
John Törnblom
b86743db25
add translation macros to the main menu
...
translate all strings in the main menu
5 years ago
John Törnblom
51e7a169a6
add initial language support using a simple MO parser
5 years ago
Anders Jenbo
191d98207b
🎨 readability-identifier-naming on DiabloUI
5 years ago
Anders Jenbo
373f28736f
🎨 Acceptable parts of modernize-*
5 years ago
Anders Jenbo
bb4e1960e7
🎨 modernize-use-nullptr
5 years ago
Gleb Mazovetskiy
e13f67f7af
🧹 DiabloUI/mainmenu.cpp: Move to anonymous namespace
5 years ago
Anders Jenbo
8c821e98d3
🚚 Restructure files
5 years ago
Anders Jenbo
997c1dba55
🚚 Split up all.h in to proper header relations
5 years ago
Anders Jenbo
61244c4d93
♻️ Rearange and apply more enums
5 years ago
Anders Jenbo
93d42b62b8
♻️ Change BOOL to bool
5 years ago
Anders Jenbo
bfb3c11c2b
🎨 Change namespace to devilution
5 years ago
Anders Jenbo
e280432b92
🚨 Fix all SDL1 warnings
5 years ago
Anders Jenbo
713f74e8d5
Implement Support menu
5 years ago
Anders Jenbo
47004ddd35
Add widescreen menus
5 years ago
Anders Jenbo
e609e170d0
Merge a large chunk of Hellfire the code paths
5 years ago
Anders Jenbo
e073422ce7
Unify executable for Spawn and Retail
...
The game will now autodetect if it should run in shareware mode or full
retail based on the found mpq file. Additionally it can beforced in the
shareware mode with --spawn even if the retail data is found.
This simplifies a lot of the spagetty code and lets us better refactor,
also worth noteing is that we won't have to setup a secound set of build
tests.
5 years ago
Anders Jenbo
201656a8c3
Correct variable type
5 years ago
Anders Jenbo
08838c9cae
Always use hellfire menu when hellfire is enabled
6 years ago
Anders Jenbo
a05bf8b3b8
Fix escape not going to Exit game in Hellfire
6 years ago
Anders Jenbo
4e8843ee7c
Implement most of the Hellfire menu
...
Still missing is the support screen (functionally identical to the
credit screen)
This also fixes a long standing issue with the menu code where it would
some times return the index and some times the value of the selected
menu item. It now always returns the index and reciver must look up the
value.
6 years ago
Tyler
ecde1f647e
Adjust UI to any resoution
6 years ago
BDC
62de5f1600
Refactor DiabloUI to dynamic C++03 compatible code
...
This will help with porting the game to the original Xbox, and also make
it easier to implement dynamic resolutions and translations.
6 years ago
Anders Jenbo
7a90b9102a
When needed, clear buffer before rendering menu
6 years ago
Anders Jenbo
ca82f81582
Move menu elements to the center of the screen
...
Previously the rendering was just shifted which gave the mouse an odd
position and made it impossible to place new elements in the left side.
6 years ago
Anders Jenbo
69ad34f58f
Consistently use NULL instead of nullptr
...
While nullptr does have extra checking, most of the code uses NULL and
nullptr makes it harder to port the code to some targets like the
original XBox
6 years ago
Gleb Mazovetskiy
1eefe841b6
mainmenu: Focus on the exit item before exiting
...
This affects both the B and the Esc key
Fixes #603
6 years ago
Anders Jenbo
3ad7e21e71
Fix flashing menu transitions
...
Fixes #591
6 years ago
Anders Jenbo
08aa6a860a
Move generic helpers out of miniwin
6 years ago
Anders Jenbo
961e7f58c4
Implement UI errors
6 years ago