Commit graph

243 commits

Author SHA1 Message Date
def 3f7befdd8b Add some further readability checks, mostly redundancy
/media/ddnet/src/engine/server/databases/sqlite.cpp:232:55: warning: the address of ‘char* sqlite3_expanded_sql(sqlite3_stmt*)’ will never be NULL [-Waddress]
  232 |         if(m_pStmt != nullptr && sqlite3_expanded_sql != nullptr)
      |                                  ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
2022-01-22 17:22:01 +01:00
ChillerDragon b770bc6988 Use ETextAlignment enum for UI
Replaces the magic numbers -1/0/1 for left/center/right

Based on the work done in upstream:

@cinaera added alignment enums
	04ee8b20a1

@TsFreddie renamed them
	67651e8122
2022-01-21 16:26:19 +01:00
def acf199835d Support GUI/Cmd key and use it as equivalent to ctrl in default shortcuts
like ctrl-f / cmd-f

On macOS all these system shortcuts are done with cmd while on Windows
ctrl is used. Support both now

Added support for cmd key as modifier for binds
2021-12-18 12:23:20 +01:00
Robert Müller 2fe5464938 remove delegate functions in CMenus, fix variable names 2021-12-03 20:26:26 +01:00
Robert Müller f334b52d94 use UIEx() consistently 2021-12-03 20:26:26 +01:00
Robert Müller 053981ee4c refactor UI scrollbars 2021-11-26 23:03:45 +01:00
fokkonaut 3d2df7cfc9 Disallow dummy option (closes #4305, #4316) 2021-11-17 20:35:39 +01:00
ChillerDragon 3eb3dcd48b Make use of IO_MAX_PATH_LENGTH
Inspired by
0a7d0fee7c
2021-09-13 12:14:50 +02:00
Jupeyy 26c5332dc6 Remove components pointers 2021-07-12 12:14:02 +02:00
def c24060f244 Compare lower case strings respecting utf8 (fixes #3937) 2021-06-28 22:51:14 +02:00
Freddie Wang 32b8c8c192
Translate "Name" and "Time" header in ghost menu 2021-06-11 13:31:30 +08:00
Jupeyy e958e0f33c Fix serverbrowser crash 2021-04-20 22:13:59 +02:00
Jupeyy 7c992e296a Center more tees 2021-04-09 20:11:53 +02:00
def 9f58b0f608 Set search field active when opening vote menu ingame
As suggested by RafaelFF
2021-03-14 19:57:23 +01:00
Дядя Женя b8ba2b226a Sliders 2021-01-08 11:43:26 +01:00
def bb43660cd4 Fix scroll bar (fixes #3347) 2020-11-21 18:30:24 +01:00
def 81bb7e661c Improve list box behaviour, make it more consistent
Make keys work after searching in vote menu

Unify some duplicated code
2020-11-13 08:03:34 +01:00
def 165857a5a8 Fix variable names manually 2020-11-02 22:40:40 +01:00
def b1f0fd8969 Enable modernize-loop-convert clang-tidy check
and run clang-format afterwards

https://clang.llvm.org/extra/clang-tidy/checks/modernize-loop-convert.html
2020-11-02 22:40:24 +01:00
Дядя Женя d681cc6787 Rcon Panel looks just like before in call vote 2020-10-30 06:40:15 +03:00
Дядя Женя 15f5ec9297 Tweaked call vote values 2020-10-27 20:31:27 +03:00
Дядя Женя ccbdfbb823 Much more readable Call Vote menu and code 2020-10-27 20:23:20 +03:00
def 67178b0ea0 Use str_time/str_time_float everywhere 2020-10-18 23:47:09 +02:00
heinrich5991 070504b5c8 Update ghost format to v6: Replace CRC with SHA256
To be friendly to other implementors of the format, the CRC field is now
zeroed out instead of completely gone.

Drop support for v2 and v3 of the ghost format, the ghost files should
have been automatically converted by the client already.
2020-10-14 17:08:58 +02:00
def 47299e8586 Out of bounds access in CMenus::RenderGame
src/game/client/components/menus_ingame.cpp:108:16: runtime error: index -1 out of bounds for type 'CGameClient::CClientData [64]'
    #0 0x55733e6a64c4 in CMenus::RenderGame(CUIRect) /media/ddnet/src/game/client/components/menus_ingame.cpp:108:73
    #1 0x55733e632ba7 in CMenus::Render() /media/ddnet/src/game/client/components/menus.cpp:1228:6
    #2 0x55733e64b141 in CMenus::OnRender() /media/ddnet/src/game/client/components/menus.cpp:2338:2
    #3 0x55733e815706 in CGameClient::OnRender() /media/ddnet/src/game/client/gameclient.cpp:676:28
    #4 0x55733e2c959e in CClient::Render() /media/ddnet/src/engine/client/client.cpp:1134:16
    #5 0x55733e2fe90f in CClient::Run() /media/ddnet/src/engine/client/client.cpp:3285:7
    #6 0x55733e31eb2e in main /media/ddnet/src/engine/client/client.cpp:4341:11
    #7 0x7f9a2057e151 in __libc_start_main (/usr/lib/libc.so.6+0x28151)
    #8 0x55733e06be0d in _start (/media/ddnet/DDNet+0x705e0d)

SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior src/game/client/components/menus_ingame.cpp:108:16 in
src/game/client/components/menus_ingame.cpp:109:14: runtime error: index -1 out of bounds for type 'CGameClient::CClientData [64]'
    #0 0x55733e6a699a in CMenus::RenderGame(CUIRect) /media/ddnet/src/game/client/components/menus_ingame.cpp:109:71
    #1 0x55733e632ba7 in CMenus::Render() /media/ddnet/src/game/client/components/menus.cpp:1228:6
    #2 0x55733e64b141 in CMenus::OnRender() /media/ddnet/src/game/client/components/menus.cpp:2338:2
    #3 0x55733e815706 in CGameClient::OnRender() /media/ddnet/src/game/client/gameclient.cpp:676:28
    #4 0x55733e2c959e in CClient::Render() /media/ddnet/src/engine/client/client.cpp:1134:16
    #5 0x55733e2fe90f in CClient::Run() /media/ddnet/src/engine/client/client.cpp:3285:7
    #6 0x55733e31eb2e in main /media/ddnet/src/engine/client/client.cpp:4341:11
    #7 0x7f9a2057e151 in __libc_start_main (/usr/lib/libc.so.6+0x28151)
    #8 0x55733e06be0d in _start (/media/ddnet/DDNet+0x705e0d)
2020-10-11 16:37:03 +02:00
bors[bot] f93c8e4fdb
Merge #2987
2987: Modulize skins, particles, emoticons and game r=def- a=Jupeyy

fixes #2203 

Puh, something i always wanted todo.
Need to error read, bcs alot of copy paste.

Modulizes all images, so that all images are mipmap indepedent, without texeloffset problems

I also added the ninja bar analyzer for #2921


Co-authored-by: Jupeyy <jupjopjap@gmail.com>
2020-10-09 15:20:48 +00:00
Jupeyy 8d6148b20b Modulize skins, particles, emoticons and game 2020-10-09 09:07:19 +02:00
Jupeyy 5ebabe2ece Text alignment 2020-10-07 04:44:35 +02:00
def 3be8a592e5 Run clang-format
Purely automatic change. In case of conflict with this change, apply the
other change and rerun the formatting to restore it:

$ python scripts/fix_style.py
2020-09-26 21:50:15 +02:00
bors[bot] 21e080596a
Merge #2836 #2841 #2845
2836: Only make Esc key leave editor when no popup is open r=Jupeyy a=def-



2841: Fix ingame browser tab change (fixes #2839) r=Jupeyy a=def-



2845: Fix spacing in kick-vote menu (center tees and text) r=Learath2 a=def-

Old: ![screenshot-20200917@090205](https://user-images.githubusercontent.com/2335377/93431529-882ab480-f8c4-11ea-8e56-dfe903a5ae06.png)
New: ![screenshot-20200917@090226](https://user-images.githubusercontent.com/2335377/93431538-8cef6880-f8c4-11ea-8946-449e7aa6dea7.png)


Co-authored-by: def <dennis@felsin9.de>
2020-09-17 14:00:09 +00:00
def b5b218d67f Fix spacing in kick-vote menu (center tees and text) 2020-09-17 09:39:50 +02:00
def 81d30f838d Fix ingame browser tab change (fixes #2839) 2020-09-16 07:36:47 +02:00
bors[bot] 7fd43163b7
Merge #2751 #2752 #2756
2751: More aggressive analysis & check 2.0 gl Functions that were used r=def- a=Jupeyy

If even that fails, I'm out of ideas

Checks all texture shaders, checks all functions used.

2752: Can't detect if paused on KoG, so don't show button r=def- a=def-

Since they're running an old version of DDNet server

2756: Don't deactivate menu when a popup is active r=def- a=Learath2

Deactivating menu while a popup is active causes the menu to never open again.

Reported by Anxton on discord.

Co-authored-by: Jupeyy <jupjopjap@gmail.com>
Co-authored-by: def <dennis@felsin9.de>
Co-authored-by: Learath <learath2@gmail.com>
2020-09-05 17:10:35 +00:00
def e162045026 Can't detect if paused on KoG, so don't show button
Since they're running an old version of DDNet server
2020-09-05 19:06:12 +02:00
Learath 9e35752d1c Don't deactivate menu when a popup is active 2020-09-05 18:13:32 +03:00
def 69e6a8fa41 Add buttons for Kill and Pause
Seems more useful than Spectate and Connect Dummy, both of which are
often mistaken by newcomers.

Make button sizes more consistent

Hide buttons that make no sense
2020-09-04 12:39:53 +02:00
heinrich5991 5d83e9177f Use player name from the Steam API as fallback
Fixes #2605.
2020-08-25 16:21:58 +02:00
Fireball ab9b96ddb2 Backported fix for Text() incorrect parameter type (int -> float)
The original fix was done by @oy for 0.7.4.
2020-07-15 20:49:14 +01:00
Fireball b1c17c3248 Backported fix for TextWidth() parameter mix-up
Fixes #2511 (Stack-buffer-overflows in some UIs).
The original fix was done by @oy for 0.7.4.
2020-07-15 20:48:29 +01:00
bors[bot] de8cc79578
Merge #2389
2389: Ignore emoticon of spammy players (fixes #2387) r=heinrich5991 a=def-

Controlled with the regular ignore chat button in players menu

Co-authored-by: def <dennis@felsin9.de>
2020-06-29 12:09:48 +00:00
def b3b0e1041c Center the icons 2020-06-27 22:58:28 +02:00
def b2371522f9 Fix alignment of icons in player options 2020-06-27 22:40:22 +02:00
def 7608eb67d6 Ignore emoticon of spammy players (fixes #2387)
Add ignore emoticon button in player menu.
Someone needs to draw the graphic for that.
2020-06-27 01:15:09 +02:00
def 2d6e56fec8 Translation fixes
- Code didn't work with newlines, get rid of them
- Some stylistic improvements
2020-06-26 18:34:50 +02:00
3edcxzaq1 4e7b534622
Update menus_ingame.cpp 2020-06-26 11:13:55 +02:00
sven 9d0bae9769 Fix unused translation 2020-06-26 02:49:35 +02:00
Dennis Felsing 37ef24225e Clean up color handling a bit
- SetAlpha should be called WithAlpha and only works for RGBA
- Fix type correctness of color_scale and introduce color_invert
- Nicer hook coll color handling in RenderPlayer
- Use CRTP to have type safe WithAlpha, otherwise this would compile:
  ColorHSLA = WithAlpha(ColorRGBA(1.0f, 1.0f, 1.0f));
2019-12-03 11:32:55 +01:00
Learath 979d58f830 Use colors in CTextRender 2019-04-27 01:34:20 +03:00
Learath 15058330fa Don't inherit from vector, more cleanup 2019-04-27 00:47:34 +03:00
Learath 65a17599e1 Add ColorHSVA, phase out more vec3's 2019-04-26 15:06:32 +03:00
def 94f3d97ddf Remove unmaintained Android code (fixes #1575) 2019-04-10 19:40:50 +02:00
ChillerDragon ce5a7ea626 Remove one of two graphic includes 2019-04-06 17:07:17 +02:00
def c0d3f5fa57 Actually disconnect dummy after confirmation (fixes #1555) 2019-03-30 16:59:25 +01:00
Dennis Felsing 0b578c4330 Fix cl_confirm_disconnect/quit_time (fixes #1550)
-1 now works as described
Split into two settings
2019-03-29 14:56:02 +01:00
Dennis Felsing 95cc357dd6
Merge pull request #1540 from def-/pr-disconnect-time
Add cl_confirm_disconnect_quit_time (fixes #1530)
2019-03-28 23:38:16 +01:00
def e6f327ef06 Move ingame browser tabs all the way left 2019-03-26 17:38:46 +01:00
def 8908102536 Add cl_confirm_disconnect_quit_time (fixes #1530)
Number of minutes of active racing time before being asked to confirm
disconnecting, disconnecting dummy or quitting through GUI. Defaults to
20 minutes, -1 to disable, 0 to always enable.

Also removed confirmation to quit when in main menu, except when having
an unsaved map in editor.

Spectate and kill should already be safe thanks to server-side kill
protection.
2019-03-25 20:10:38 +01:00
def bf576723a3 Add KoG tab in server browser
- As requested by qshar and KoG players
- Similar to DDNet tab
- Info fetched from servers-kog entry from https://info.ddnet.tw/info
- Also supports countries and types
- Doesn't inform whether map has been finished
- Generalized the code a bit but it's still ugly
- Depends on #1533, also shows KoG servers as official/verified
2019-03-24 23:15:40 +01:00
jupeyy 619a33a7d5 text kerning fix, add new text render flags for accurate positioning 2019-01-06 06:42:57 +01:00
Dennis Felsing a2e3496005
Merge pull request #1220 from heinrich5991/pr_ddnet_ui_skinprefix
Add some UI for the skin prefix stuff
2018-09-20 08:41:20 +02:00
heinrich5991 9ff8b6e2df Factor out clear button from four different places 2018-09-20 07:43:05 +02:00
heinrich5991 5c4e819e44 Use str_startswith, str_endswith instead of ad-hoc implementations 2018-07-26 14:18:23 +02:00
Jupeyy c7114e734c more ui text positioning fixes 2018-04-04 02:40:30 +02:00
Jupeyy c1a962b870 add ui fixes to work with new text renderer 2018-03-13 21:59:07 +01:00
Redix de1c0cf24d Fixed several issues with the ghost (thanks to Learath2) 2017-10-28 14:23:24 +02:00
Redix 1638f39557 Use the same ghost path everywhere 2017-09-29 23:15:47 +02:00
Redix e9a0271c29 Improved ghost and race recorder file handling 2017-09-28 19:13:20 +02:00
Redix d37bb5e65a Fix ghost menu localization 2017-09-28 16:02:01 +02:00
Redix 0c6026c22e Hide ghost menu buttons if there are no ghosts 2017-09-28 16:02:00 +02:00
Redix 0721b895ae Make sure that we have a free ghost slot for new records 2017-09-28 16:01:58 +02:00
Redix 1e845a4020 Added reload button in ghost menu 2017-09-28 16:01:58 +02:00
Redix 5b3e9e4bbf Improved ghost file management 2017-09-28 16:01:58 +02:00
Redix 3c8217b39c Mark own ghost with color 2017-09-28 16:01:56 +02:00
Redix 4f57b33524 Use static array for active ghosts
Improve ghost file handling
2017-09-28 16:01:56 +02:00
Redix c189678e44 Cleaned up the ghost component and made it use the ghost recorder and loader 2017-09-28 16:01:56 +02:00
def caec69abc1 RequestDDNetInfo in ingame menu too 2017-09-03 18:17:21 +02:00
Redix affa3faeec Only use integers for ghost and race demo handling
Ghosts still use floats internally
2017-08-31 03:22:08 +02:00
def a9d3f45b25 Add ui_close_window_after_changing_setting 2017-07-25 19:08:16 +02:00
def bcec0f1bb1 ctrl-f to search, ctrl-x to exclude, ctrl-r to reason 2017-07-24 18:05:19 +02:00
def ac481a972c Heuristic to speed up ghost loading on map change 2017-06-01 21:26:59 +02:00
def 4761608329 Input fixes from TW master for mouse wheel 2016-04-30 20:11:26 +02:00
def 7dd593a35e A bit nicer ingame browser menu corners 2016-04-27 23:54:26 +02:00
def ec7d28ed86 Change ingame menu layout a bit: Browser, Ghost directly instead of Network tab 2016-04-27 20:14:03 +02:00
def b495b1681c Double click works on votes (and vote window disappears after server setting vote) 2016-04-27 20:04:31 +02:00
def d019eb87c6 Use default page when ingame browser uses invalid page (fixes #345) 2016-04-27 17:59:12 +02:00
Tim Schumacher 94f3da4a47 removed localize for search symbol 2016-02-12 21:31:58 +01:00
Tim Schumacher edb2270ca1 removed include iostream 2015-10-07 20:10:19 +01:00
timgame fb8778c717 only reload servers when changing tab 2015-10-07 20:10:02 +01:00
def 902e4b7487 Also use map name by default for manual demo recording 2015-08-22 17:36:47 +02:00
def db2256e827 Fix a few whitespace-at-end-of-file issues 2015-08-22 15:27:41 +02:00
def e6db197183 Fix scroll bar in server control votes when search bar is used 2015-07-25 18:43:54 +02:00
Nikita Zyuzin 077db7d149 Fix bug with 'Join Red' and 'Spectate' buttons sharing same state variable 2015-05-29 01:11:01 +04:00
def 8f02de318b Make dummy connecting a bit nicer: Show that dummy is being connected, disable unusable buttons 2015-04-19 14:40:05 +02:00
def 16106d8ee6 Fix menu bug with button pressing (more of a hack) 2015-04-19 14:24:20 +02:00
def 6d54de89b6 Get rid of clang static analyzer warnings 2015-04-19 00:31:45 +02:00
def 7bd3da6679 Hopefully fix voting problems 2015-04-03 01:29:11 +02:00
def d8c97f0339 Fix: Still show empty lines in votes 2015-03-15 17:08:39 +01:00
def 6fc024d71f Fix Visual Studio compilation 2015-03-14 17:26:24 +01:00
def a913b1731c Fix scrolling in votes 2015-03-14 16:52:57 +01:00
def 079d92c3e7 Fix vote selection 2015-03-14 15:32:04 +01:00