Commit Graph
33 Commits
Author SHA1 Message Date
Ivan Savenko c855823528 Renamed files in client/battle to match new names of classes 2022-12-09 13:38:46 +02:00
Ivan Savenko 0cae259f53 Most of rendering in BattleInt is done via canvas
- refactoring of CBattleStacksController.cpp
- moved EAlignment enum to Geometries.h from CIntObject
- renamed EAlignment to ETextAlignment, to avoid conflict with good/evil
alignemt
- ETextAlignment is now enum class
2022-11-26 23:12:20 +02:00
Ivan Savenko 7a6ad671ab Separated battle control panel into new class, refactoring of
CGStatusBar to allow shared API with battle console
2022-11-18 17:54:10 +02:00
John Bolton a05ae78e67 Fixed lots of warnings.
Disabled the following (for MSVC only) that couldn't (or shouldn't) be fixed.

4003: not enough actual parameters for macro 'identifier'
4250: 'class1' : inherits 'class2::member' via dominance
4251: 'type' : class 'type1' needs to have dll-interface to be used by clients of class 'type2'
4275: non dll-interface class 'type1' used as base for dll-interface class 'type2'
2020-10-04 02:20:18 -07:00
toneyisnow 8341ba3c27 Update according to comments. 2020-01-22 23:07:20 -08:00
toneyisnow 01ca21ae67 Fix bug: LobbyScreen UI has a bug on the Difficulty toggle group.
Scenario: In LoadGame Lobby screen, the difficulty toggle group is showing multiple choices, but actually only one valid is working.

The reason is, in the Lobby screen Initialization code will set the difficulty = 0, and each time the player changes a map in the selection, the toggle group control is not resetting the difficulty buttons to disabled state.

How fix:
Add a new method to ToggleGroup class: setSelectedOnly, which will disable all other buttons and then set the selected button.

Note:
During the game loading time, the client is loading the map, and send a NetPack to server: LobbySetMap, and send a NetPack to Interface: LobbyUpdateState.
In the LobbyUpdateState it sets the map difficulty.
2020-01-21 01:09:08 -08:00
Alexander Shishkin 5c09f751b3 Gui cleanup3 - UI refactoring to use smart pointers (#440)
* Changed most gui classes to use shared pointers
* Store and use IImage as shared_ptr
* CSpellWindow redesign
* AdventureMapClasses cleanup
* CLabel: store background as smart pointer
* Store CObjectList items as smart pointers
* Removed destroy function of list item
* Store toggle buttons as smart pointers
* Use CComponent as smart pointer
* Attempt to fix artifact merchant drawing
2018-04-07 18:34:11 +07:00
Raphnalor 0f00dbf8cf Fix highlighting of a selected bonus for campaign. (#432) 2018-03-17 12:23:22 +08:00
FeniksFire 1331c81a8b Update graphics for QuickRecruitmentWindow
Adding graphics maded by edeksumo
2018-01-13 09:49:29 +01:00
AlexVinS 64d9dadd64 Logging cleanup. 2017-08-11 15:47:50 +03:00
Arseniy Shestakov f1e5797834 Code style: move or add licensing information on top of every file 2017-07-14 01:26:03 +03:00
Fay 02fa478bfb Refactor: unified logic for notyfing CIntObjs about left/right mouse click events;
Added support for middle-click;
2017-06-07 20:16:18 +02:00
AlexVinS f11c54b5e9 Wipe unused ClickableArea 2016-11-27 16:07:03 +03:00
AlexVinS db40e125eb Fixed CID 1243181, CID 1197449, CID 1366374, CID 1366377, CID 1366359 2016-11-24 21:56:30 +03:00
AlexVinS 3a52a3c663 Allow CAnimImage to share animation object. 2016-10-16 12:58:18 +03:00
Sandy Carter 236492ed39 widgets: Cleanup musicButton specific hacks 2015-08-22 12:40:14 -04:00
Sandy Carter 9d62a2f0a1 Buttons: Add CVolumeSlider widget
New widget specifically for volume settings.
Replace previous implementation using 10 toggle buttons.
Enable indicator animation
Fix indicator ghosting when drag and releasing
Add scroll capability to volume
Volume now can be adjusted from 0 - 99 with the mouse or the scroll wheel
2015-08-22 12:40:14 -04:00
Sandy Carter f28c33001c Boyscouting: Fix typo in comment 2015-08-22 12:40:14 -04:00
Sandy Carter a14711b3b4 Boyscouting: Fix backwards ternary operator 2015-08-22 12:40:14 -04:00
AlexVinS dca1e28bc1 SDL1 wipe, part 1. Untested. 2015-06-21 01:59:30 +03:00
ArseniyShestakov 448fbe44e9 Improve CButton::block and fix CToggleGroup->selectedID
CToggleGroup. Originally when I added initialization for selectedID I didn't find out that -1 is used for "random" buttons. So as result I fixed uninitialized variable usage, but break initial button state change in RMG options because setSelected ignore state change request because it's see -1 button already marked as selected.
2015-03-16 15:55:36 +03:00
AlexVinS c4cbda88ac Fix "reorder" warnings 2015-02-21 12:39:10 +03:00
ArseniyShestakov 007f95fa44 Fix valgrind warning about uninitialised value 2015-02-16 13:28:10 +03:00
ArseniyShestakov 53c7a3cfcb Added function CSlider::moveToMin 2014-11-24 15:24:03 +03:00
Ivan Savenko dce9880d16 Minor refactoring of FunctionList using variadic templates.
Please make sure that all supported compilers are OK with this code
2014-11-12 22:46:37 +02:00
Ivan Savenko 3939c70a81 Fixed 1277 - only 2 cursor buttons will be enabled for sliders, depending on its direction (horizontal/vertical) 2014-09-18 17:08:21 +03:00
Ivan Savenko e692f3f520 Implemnted enemy turn speed selection:
- implemented switch in settings screen
- implemented "0 speed", animation-free. *may* also work for player-owned heroes
- removed no longer used creature window switch
2014-08-11 19:16:39 +03:00
Ivan Savenko 1e5e02c7df Compilation fixes caused by merge, replaced some remaining boost::bind with std's 2014-08-09 15:14:31 +03:00
Ivan Savenko 77a73fbaa9 Merge branch 'feature/freegfx' into refactoring/guiClasses
Conflicts:
	client/windows/CHeroWindow.cpp
	client/windows/CQuestLog.cpp
	client/windows/GUIClasses.cpp
2014-08-03 18:50:59 +03:00
Ivan Savenko 7390647cd5 End of buttons refactoring:
- cleanup of slider API
- documentation fixes
2014-08-03 17:31:56 +03:00
Ivan Savenko 0882201b17 Miscellaneous fixes to toggle buttons 2014-08-03 16:19:16 +03:00
Ivan Savenko 10fc1892a8 Large refactoring of button classes:
- renamed CAdventureMapButton to more expectable CButton
- merged CButtonBase into CButton
- created more generic class for clickable elements
- created more generic class for selectable elements
- renamed CHighlightableButton to CToggleButton
- renamed CHighlightableButtonsGrous to CToggleGroup
- minimized differences between API of all these classes
- removed all but one contructors in buttons, with same parameters across all classes
2014-08-03 14:16:19 +03:00
Ivan Savenko 731aedf3a1 Split CIntObjectClasses into multiple smaller files. This should be the last change in files 2014-07-15 10:14:49 +03:00