Ivan Savenko
df83fa33a1
Merge branch 'vcmi/master' into 'vcmi/develop'
2024-05-31 09:34:21 +00:00
Ivan Savenko
adc3441bda
Merge pull request #3998 from IvanSavenko/refactor_sdl_media
...
[1.6] Reorganize SDL sound/music/video handling
2024-05-31 12:02:55 +03:00
Ivan Savenko
5d6470e527
Merge pull request #4025 from IvanSavenko/shared_ptr_lib
...
[1.6] Use shared_ptr for library entities
2024-05-30 19:14:06 +03:00
SoundSSGood
07239dcfb5
artifact parts calc
2024-05-24 21:22:08 +02:00
SoundSSGood
3692ca25ed
CArtifactsOfHeroBase refactoring
2024-05-21 12:05:07 +03:00
SoundSSGood
03aaf849f0
CWindowWithArtifacts remove std::variant
2024-05-20 15:15:46 +03:00
SoundSSGood
0501073d4c
Artifacts altar ctrl+click
2024-05-20 11:47:12 +03:00
Ivan Savenko
d965226cbd
Moved Exchange Window to new file, no functionality changes
2024-05-19 10:53:56 +00:00
Ivan Savenko
88fbb7ee71
Most of buttons created in cpp now have assigned shortcut
2024-05-19 09:12:36 +00:00
Ivan Savenko
947d07faa4
Add separate shortcuts for saving and loading of artifact costumes
2024-05-18 16:27:42 +00:00
Ivan Savenko
7461df161c
lib now uses shared_ptr for entities. Removed manual memory management.
2024-05-17 15:04:05 +00:00
SoundSSGood
09bb9895ce
refactoring
2024-05-17 14:59:54 +03:00
SoundSSGood
6a1a6b6864
weak_ptr removed
2024-05-17 14:59:54 +03:00
SoundSSGood
7abfa7b42a
ArtifactPosition::TRANSITION_POS now is simple ArtSlotInfo
2024-05-17 14:59:51 +03:00
Ivan Savenko
721b15d9de
Merge branch 'vcmi/master' into 'vcmi/develop'
2024-05-17 08:26:37 +00:00
Ivan Savenko
540bd16e7b
Fixed video widget playback
2024-05-16 16:50:36 +00:00
Ivan Savenko
75941a6869
Unified audio and video handling of ffmpeg
2024-05-15 17:05:17 +00:00
Ivan Savenko
3f8781db69
Fixed sound extraction, slightly better approach to ffmpeg
2024-05-15 17:05:17 +00:00
Ivan Savenko
661a66121b
Cleaned up IVideoPlayed API to remove global state
2024-05-15 17:05:17 +00:00
Ivan Savenko
d08c7b7b8f
Added VideoWidget to hide implementation details
2024-05-15 17:05:16 +00:00
Ivan Savenko
d27b854cb1
Reorganized music, video and sound players:
...
- All XXXplayers are now in client/media directory
- Reogranized code on one class per file basis
- Extracted interfaces from handlers. Handlers now implement
corresponding interface.
- CCS now only stores pointer to an interface
2024-05-15 17:05:12 +00:00
Ivan Savenko
0ab23c68f6
Deactivate on-screen keyboard if input is deactivated
2024-05-15 12:55:36 +00:00
Ivan Savenko
fe4b4a4fba
Hopefully better logic for on-screen keyboard visibility
2024-05-15 12:45:45 +00:00
Ivan Savenko
d374cec6fb
Force-show on-screen keyboard if player closed it before
2024-05-15 12:45:45 +00:00
Ivan Savenko
7790b8969d
Simplify TextInput constructor
2024-05-15 12:45:45 +00:00
Ivan Savenko
93c3cf372b
Reworked TextInput to allow text overflow support
2024-05-15 12:45:45 +00:00
Ivan Savenko
1abe9007bc
Moved CTextInput to a separate file. No changes in logic
2024-05-15 12:45:45 +00:00
Ivan Savenko
da9d82b697
Merge pull request #3973 from vcmi/master
...
Merge master -> beta
2024-05-14 16:59:10 +03:00
Ivan Savenko
c92a5bbbab
Attempt to track crashes with unclear cause
2024-05-14 09:44:40 +00:00
Ivan Savenko
f061f98ddd
Merge pull request #3959 from IvanSavenko/fix_mac_hotkeys
...
Better handling of Ctrl / Cmd modifier keys on Apple systems
2024-05-14 12:16:55 +03:00
Ivan Savenko
c898d16458
Merge pull request #3948 from IvanSavenko/lobby_ui_fix
...
[1.5.1] Fixes for lobby UI
2024-05-13 14:39:53 +03:00
Ivan Savenko
0aa7362adf
Fix possible crash on accessing faction description
2024-05-12 20:24:09 +00:00
Ivan Savenko
7267e02b8d
Better handling of Ctrl / Cmd modifier keys on Apple systems:
...
- Test only for Cmd modifier key when processing mouse clicks
- Test both Ctrl and Cmd modifier key when processing keyboard input
- This logic is now used for all Apple systems - macOS and iOS
2024-05-12 17:09:31 +00:00
Ivan Savenko
f55d07a829
Fix not visible text after switching to channel without slider in log
2024-05-11 20:53:39 +00:00
Ivan Savenko
64d6e48540
Fixed mouse double-click handling in some widgets.
...
Now double-click when 1st click was not inside widget should work as
expected:
- scenario list: 2nd click on non-selected scenario will select it
instead of starting unselected map
- component selection: 2nd click on non-selected component would select
it instead of confirming choice
- town portal dialog: 2nd click on non-selected town would only select
it
- tavern window: right-click would now also select this hero (h3 logic)
2024-05-10 16:05:59 +00:00
Ivan Savenko
2ddb41e654
Merge branch 'vcmi/master' into 'vcmi/develop'
2024-05-10 08:09:51 +00:00
DjWarmonger
4949b98ed3
Merge pull request #3759 from Laserlicht/bio
...
Let's try this
2024-05-07 09:05:14 +02:00
Ivan Savenko
30e0a16ee9
Fix some 'new' issues reported by Sonar Cloud
2024-05-06 15:33:30 +00:00
Ivan Savenko
74d3b4ab43
Added block for several more actions outside of our turn
2024-04-30 17:51:32 +03:00
Ivan Savenko
1775caa872
UI now correctly blocks stack rearrangement when it is not our turn
2024-04-30 17:51:32 +03:00
DjWarmonger
86bf4f98af
Merge pull request #3846 from vcmi/triple_resource_window
...
Handle triple resources in creature recruitment window
2024-04-29 12:23:10 +02:00
Tomasz Zieliński
34d8afaa67
Even better alignment
2024-04-28 12:40:55 +02:00
Tomasz Zieliński
4f7a8d83cc
Tweak text alignment
2024-04-28 10:29:22 +02:00
Tomasz Zieliński
f28438902a
Fit 3 resources in creature recruitmnet window
2024-04-28 07:54:19 +02:00
SoundSSGood
ce68b3f45d
class CArtifactsOfHeroMain : public CKeyShortcut
2024-04-27 21:35:38 +03:00
SoundSSGood
ce9d2d8ab8
Switching costume
2024-04-27 21:35:37 +03:00
SoundSSGood
25dea7e364
Saving costume
2024-04-27 21:35:37 +03:00
Ivan Savenko
01c2814d35
Merge pull request #3821 from SoundSSGood/CWindowWithArtifacts-refactoring
...
CWindowWithArtifacts refactoring
2024-04-26 11:58:38 +03:00
Ivan Savenko
1dc962804e
Fixed possible crash on having selectable reward with no visual image
2024-04-25 14:04:45 +03:00
SoundSSGood
c9a8f8e855
Sonarcloud warnings
2024-04-23 22:21:46 +03:00
SoundSSGood
20471c9c2f
virtual CWindowObject
2024-04-23 18:58:41 +03:00
SoundSSGood
25d2b468c3
CWindowWithArtifacts preparations
2024-04-23 16:06:58 +03:00
Ivan Savenko
50dc6f67c6
Merge pull request #3809 from dydzio0614/shortcut-enhancements
...
Artifact management shortcuts + game begin default keybind fix
2024-04-22 11:13:09 +03:00
Dydzio
316c5986f7
Update client/widgets/CWindowWithArtifacts.cpp
...
Co-authored-by: SoundSSGood <87084363+SoundSSGood@users.noreply.github.com>
2024-04-20 23:52:24 +02:00
Dydzio
c8dfe07f17
Apply suggestions from code review
...
Co-authored-by: SoundSSGood <87084363+SoundSSGood@users.noreply.github.com>
2024-04-20 23:24:44 +02:00
M
9e6f558631
Add quick swapping artifacts between heroes via CTRL+click
2024-04-20 20:25:45 +02:00
M
bfda73f69f
Add quick artifact equip-unequip via holding alt button while clicking
2024-04-20 18:15:45 +02:00
Ivan Savenko
7d93206786
Use cache for CAnimImage. Improves performance of CAnimImage
2024-04-20 12:28:50 +03:00
SoundSSGood
e8eb638bf1
backpack window cursor fix
2024-04-17 16:11:33 +03:00
Laserlicht
e4b60baa3b
creature/town biography/description
2024-04-12 23:35:39 +02:00
Ivan Savenko
de5bd5f94c
Reset picked artifact on window deactivation
2024-04-11 23:52:37 +03:00
SoundSSGood
6a0e8b0cab
Junkyard crash fixed
2024-04-11 01:44:15 +03:00
SoundSSGood
ca0f7aee7d
artifactMoved assertion fix
2024-04-10 23:30:31 +03:00
Ivan Savenko
f73243eb1c
Merge pull request #3669 from SoundSSGood/market-window-unified
...
Market window and widgets
2024-04-09 12:48:25 +03:00
SoundSSGood
39a0e56169
suggested changes
2024-04-08 14:57:58 +03:00
SoundSSGood
cb6fc4a385
Regressions fixed
2024-03-29 16:21:59 +02:00
Evgeny Malygin
ee42527ee1
Fixes
2024-03-29 12:28:14 +02:00
Ivan Savenko
69f7b3169e
UI improvements for lobby:
...
- Added notifications sounds for invites and chat messages
- Added notifications for unread chat messages in inactive channels
- Added click sound when switching between channels
- Added workaround to prevent clicks due to list recreation
- Partial support for receiving invites
2024-03-27 13:10:55 +02:00
Ivan Savenko
4dce0479ba
UI improvements for lobby screen:
...
- Show description of current chat room in header
- Show count of online accounts / active rooms
- Highlight currently selected chat room
2024-03-27 13:10:55 +02:00
Ivan Savenko
8e9caf54f2
Added all missing text alignment values
2024-03-27 13:10:55 +02:00
Ivan Savenko
7c9aa9d953
Show all rooms (including private) in room list
2024-03-27 13:10:55 +02:00
SoundSSGood
2cdf2b4083
fixed missed trader text
2024-03-25 17:38:43 +02:00
SoundSSGood
c6c213c454
CMarketBase::hRight CMarketBase::hLeft removed. Final changes
2024-03-25 12:56:46 +02:00
SoundSSGood
cc14f85445
Refactoring. Regressions fixing.
2024-03-25 12:55:05 +02:00
SoundSSGood
433d55cac3
Market window unified
2024-03-25 12:44:34 +02:00
SoundSSGood
ae8d70748b
Altar artifacts widget refactoring
2024-03-25 12:44:33 +02:00
SoundSSGood
4839891de4
Cleanup & refactoring
2024-03-25 12:44:33 +02:00
SoundSSGood
f3fa6714dc
Artifacts selling widget
2024-03-25 12:44:33 +02:00
SoundSSGood
bb7137545f
Artifacts market widget
2024-03-25 12:44:33 +02:00
SoundSSGood
4e0ea7355b
Transfer resources widget
2024-03-25 12:44:33 +02:00
SoundSSGood
4d3bf882ed
market resources widget
2024-03-25 12:44:33 +02:00
SoundSSGood
6b658bf9c1
freelancer guild widget
2024-03-25 12:44:33 +02:00
SoundSSGood
0813fdbf8c
market window
2024-03-25 12:44:33 +02:00
Ivan Savenko
6a5696604e
Merge pull request #3656 from SoundSSGood/backpack-management
...
Backpack management init
2024-03-24 19:09:32 +02:00
DjWarmonger
2c9b7089ad
Merge pull request #3645 from vcmi/save_rmg_options
...
Save rmg options
2024-03-14 19:54:08 +01:00
SoundSSGood
d7607983fc
sonarcloud warnings
2024-03-08 14:33:03 +02:00
SoundSSGood
9f688e6fb7
MoveArtifact, BulkMoveArtifacts PlayerColor player field
2024-03-07 22:28:56 +02:00
SoundSSGood
b1f52eec41
ManageBackpackArtifacts
2024-03-07 18:16:22 +02:00
SoundSSGood
d143f53d7e
using deque for hero's backpack storage
2024-03-07 18:16:21 +02:00
Ivan Savenko
22f23ba6f8
Restore previously disabled functionality
2024-02-29 16:47:44 +02:00
Ivan Savenko
ddb2acb9c2
Code cleanup
2024-02-29 15:39:13 +02:00
Ivan Savenko
0051ffa7a9
Implemented configurable buttons. Replaced 'animateLonelyFrame' logic.
2024-02-29 13:57:25 +02:00
Ivan Savenko
07d201502e
Refactoring of button class to prepare for configurable button
2024-02-29 13:57:25 +02:00
Tomasz Zieliński
2c32c770f7
First version that works in lobby
2024-02-29 12:45:08 +01:00
Ivan Savenko
99cb1df91d
Fixes for positioning on popups with components
2024-02-27 13:15:16 +02:00
Ivan Savenko
93b3cb3af5
Better size & positioning of infoboxes
2024-02-26 22:04:30 +02:00
Ivan Savenko
ec159f2fdd
Fixed bad line breaks in starting faction description popup
2024-02-26 22:04:02 +02:00
Ivan Savenko
e6b339448f
Refactoring & deduplication of infowindow code
2024-02-26 18:32:15 +02:00
Ivan Savenko
bd901cb001
Replaced lines in settings with primitives
2024-02-19 16:55:07 +02:00
Ivan Savenko
ef8ff00973
Unified common primitive-based UI elements
2024-02-18 22:15:31 +02:00
Ivan Savenko
14e3c762c0
Fix slot selection in markets
2024-02-18 21:18:55 +02:00
Ivan Savenko
af671d109f
Made graphical primitive-based UI more configurable
2024-02-18 20:48:45 +02:00
Ivan Savenko
7359b66f99
Do not use floating point equality checks
2024-02-14 12:07:07 +02:00
Ivan Savenko
f2ecd4cf11
Merge branch 'develop' into 'lobby'
2024-02-11 16:13:13 +02:00
Alexander Wilms
522cb571b3
Remove redundant virtual
specifiers
...
`grep -nr virtual | grep -v googletest | grep override > ../redundant_virtual.txt`
```python
import os
with open("../redundant_virtual.txt") as f:
for line in f:
print()
line: str = line.strip()
print(line)
tmp = line.split(":")
file = tmp[0].strip()
code = tmp[-1].strip()
print(file)
print(code)
new_code = code.replace("virtual ", "", 1)
# https://superuser.com/a/802490/578501
command = f"export FIND='{code}' && export REPLACE='{new_code}' && ruby -p -i -e \"gsub(ENV['FIND'], ENV['REPLACE'])\" {file}"
os.system(command)
```
2024-02-10 20:46:13 +01:00
Ivan Savenko
80fc2bb695
Merge remote-tracking branch 'vcmi/develop' into lobby
2024-02-03 21:11:34 +02:00
SoundSSGood
a42b60feb9
suggested changes
2024-02-01 13:28:08 +02:00
SoundSSGood
d16632b54c
cleanup & fix build & sonarcloud fixes
2024-01-30 01:23:50 +02:00
SoundSSGood
c6ca6ad835
sacrifice routine
2024-01-27 23:01:57 +02:00
SoundSSGood
f66918ea14
bulk move to altar
2024-01-27 15:28:23 +02:00
SoundSSGood
652f009181
arts altar - arts holder
2024-01-27 15:28:21 +02:00
Ivan Savenko
322c5faf63
Merge remote-tracking branch 'vcmi/develop' into lobby
2024-01-26 16:52:23 +02:00
Ivan Savenko
2a193effcc
Merge branch 'master' into 'develop'
2024-01-25 16:23:13 +02:00
Ivan Savenko
6a42494b12
Merge CKeyboardFocusListener and IFocusListener into CFocusable
2024-01-22 21:48:03 +02:00
Ivan Savenko
55b504792e
Implemented basic version of login window and persistent connection on
...
client
2024-01-19 23:49:59 +02:00
Ivan Savenko
bd5682ecc3
Merge remote-tracking branch 'vcmi/master' into develop
2024-01-19 13:49:54 +02:00
Ivan Savenko
3e8f110482
Merge pull request #3515 from SoundSSGood/backpack-statusbar
...
Backpack statusbar
2024-01-18 16:05:42 +02:00
SoundSSGood
a753319ad0
backpack window statusbar
2024-01-18 15:55:54 +02:00
Alexander Wilms
73019c204d
Replace redundant types with auto
for the lvalues of template factory functions for smart pointers
...
grep -r --include \*.h --include \*.cpp "= std::" * | grep -v auto | grep -Po ".*[^ ]+ [^ ]+ [^ ]*[ ]*=.*;" | grep -v "auto\|int\|char\|bool\|float|\double\|for\|if\|googletest\|fuzzylite\|size_t\|using\|return" | grep -v double | grep -v si64 | grep -v si32 | grep -v ui32 | grep \< | grep -v float | tr -d '\t' | grep -v assert > redundant_types.txt
import re
with open("redundant_types.txt") as f:
for line in f:
line = line.strip()
path = line.split(":", 1)[0]
original_code = ":".join(line.split(":")[1:]).strip()
print()
print(path)
print(original_code)
prefix = "auto "
if original_code.startswith("static"):
static = True
else:
static = False
cpp_type = " ".join(original_code.split("=")[0].strip().split(" ")[0:-1])
print(cpp_type)
if static:
new_code = "static auto "+ " ".join(original_code.split(" ")[2:])
else:
new_code = "auto "+ " ".join(original_code.split(" ")[1:])
print(new_code)
if True:
with open(path, "r") as f:
filedata = f.read()
filedata = filedata.replace(original_code, new_code)
with open(path, "w") as f:
f.write(filedata)
2024-01-17 12:50:00 +00:00
Alexander Wilms
cca08e29da
Remove duplicate semicolons
2024-01-16 19:02:39 +00:00
Ivan Savenko
019a4151b9
Merge pull request #3258 from SoundSSGood/trade-panels
...
Market rework
2024-01-12 21:53:13 +02:00
SoundSSGood
4df7de36c1
fixed regression
2024-01-11 14:51:42 +02:00
SoundSSGood
b840cf3650
suggested changes
2024-01-11 12:46:32 +02:00
Alexander Wilms
f3277b7953
Define each identifier in a dedicated statement
2024-01-10 00:22:23 +00:00
SoundSSGood
fdf60b2151
moved to widgets/markets
2024-01-09 20:21:09 +02:00
SoundSSGood
d0ca63d2c9
subclasses for market composition
2024-01-08 16:24:47 +02:00
SoundSSGood
50a5c72d1b
Creatures trade panel
2024-01-08 16:24:47 +02:00
SoundSSGood
791ee78cc4
players trade panel
2024-01-08 16:24:47 +02:00
SoundSSGood
f043c417a1
Artifacts trade panel
2024-01-08 16:24:47 +02:00
SoundSSGood
b246e24811
reworking slot selection
2024-01-08 16:24:47 +02:00
SoundSSGood
6c828d1be9
Resources trade panel
2024-01-08 16:24:47 +02:00
Laserlicht
056dccda30
different max width
2024-01-08 00:08:05 +01:00
Laserlicht
24d4816a36
trim text
2024-01-07 23:42:48 +01:00
Ivan Savenko
a9005da01e
Merge pull request #3366 from Laserlicht/battle_informations
...
Battle stacks informations
2023-12-28 12:39:26 +02:00
Ivan Savenko
28a3deb42b
Do not allow stealing input focus from ourselves
2023-12-24 22:01:22 +02:00
Ivan Savenko
ec1aee68d5
Fix invisible chat in pregame. Fixed positioning of chat box
2023-12-23 18:12:55 +02:00
Laserlicht
f0c97b344a
add duration + morale/luck
2023-12-23 16:07:12 +01:00
Laserlicht
c20f0bdc3e
using CHeroArea
2023-12-22 01:30:41 +01:00
SoundSSGood
e5c532beb4
gesture for quick backpack window
2023-12-20 16:55:38 +02:00
SoundSSGood
5099b52a4f
Quick backpack. Spells on scrolls view
2023-12-19 19:01:56 +02:00
SoundSSGood
21b02414bf
Refactoring. Callbacks have been encapsulated. Added cursorPosition
2023-12-19 19:01:56 +02:00
SoundSSGood
29b61081f3
Quick backpack
2023-12-19 19:01:56 +02:00
Ivan Savenko
902db091da
Simple fix for slider activation when clicking on left/right buttons
2023-12-09 18:09:10 +02:00
Ivan Savenko
861c53059e
Added callbacks for preset dropdowns
2023-12-07 13:57:16 +02:00
Ivan Savenko
1f0bcbc194
Added option to configure dropdown position
2023-12-07 13:57:16 +02:00
Ivan Savenko
0fd966818f
Remove 'visible' property from images, replaced with enable/disabled
...
call
2023-12-07 13:57:16 +02:00
Ivan Savenko
5df53f6ea2
Hota compatibility fix - allow stack selection border to have different
...
size than creature icon
2023-11-27 23:20:24 +02:00
Ivan Savenko
81a48f2d80
Do not attempt to resize text box to zero-width
2023-11-27 14:08:49 +02:00
Ivan Savenko
c5eeaa6526
Added non-linear slider for better simturn duration selection
2023-11-13 19:06:56 +02:00
gamestales-com
a574f18e69
#2903-morale-description-#1442
2023-11-10 15:58:19 +01:00