1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-22 22:13:35 +02:00
Commit Graph

777 Commits

Author SHA1 Message Date
Nordsoft91
205bb09880
Launcher fixes for mod filesystem (#860)
* Show submods as disabled if parent mod is disabled
* [845] disable button for local mods
Fixes for #812 #851 #852
2022-09-10 19:30:41 +03:00
Nordsoft91
5862c192b0
Mod from GitHub (#785)
* Make new dialog for checking updates
* update on startup
* Implemented auto-update
2022-09-04 19:32:48 +03:00
Soar Qin
188607b05f Replace cotire with CMake builtin precompiled headers support (Requires CMake version >= 3.16) 2022-06-17 17:20:08 +03:00
Konstantin
1a6ee0d697
Launcher: Qt6 support. Qt 5.12 required (#746)
* Launcher: Qt6 support. Qt 5.12 required
2022-05-28 16:32:20 +03:00
Konstantin
8fc14369a4
CMake presets. (#744)
* CI: use single build action
* CMake: use imported targets
* CI: do not build boost for linux
* CMake: add FORCE_BUNDLED_MINIZIP option
* linux: use external minizip and fuzzylite
* CMake: add presets
* .gitignore: ignore cmake build dirs
* github: use cmake presets
2022-05-26 08:55:20 +03:00
val-gaav
3d1da88bb9 Update csettingsview_moc.ui 2022-04-26 15:08:02 +03:00
val-gaav
4056772998 Update csettingsview_moc.ui 2022-04-26 15:08:02 +03:00
Alexander Wilms
ba7c9d7021 Linux packaging: Add metainfo file 2021-08-02 12:27:56 +01:00
Andrii Danylchenko
b4241670ba Nullkiller: rename VCAI to AIGateway 2021-07-26 21:02:50 +03: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
hwiorn
0c3be77e78 Add Korean encoding(CP949) 2020-03-19 16:11:55 +09:00
DJWarmonger
ab62430785 Remove space after if 2019-07-30 11:00:44 +02:00
DJWarmonger
20ea7ac44f Disable drag & drop icons:
https://bugs.vcmi.eu/view.php?id=3078
https://bugs.vcmi.eu/view.php?id=3079
2019-07-30 09:37:00 +02:00
DJWarmonger
d58c7b2105 Persist mod table header (especially column widths). 2019-07-30 09:28:42 +02:00
DJWarmonger
37bebd8f62 Persist window settings in system 2019-07-30 08:32:35 +02:00
Dydzio
54550b50de Update VS files to 2019, partially fix test project 2019-06-09 17:28:55 +02:00
Michał Kalinowski
a0d1808b62 CMake transitive compile dependency
Moving to more target focusing code that provides better transitive scope
2019-01-19 17:38:54 +03:00
Dydzio
216d50788b Fix AI build, update default Windows SDK version for projects 2018-12-31 15:18:42 +01:00
Michał Janiszewski
7be9aa4868 Prevent shadowing of function arguments by local vars 2018-10-29 16:56:14 +01:00
Dydzio
6174df0a72 Revert only launcher saving to settings.json from PR441 2018-07-16 22:05:42 +02:00
Karlis Senko
40e6292ed2 Fix memory leaks in launcher. 2018-05-01 00:01:20 +03:00
Arseniy Shestakov
9da3f48274 Code style: formatting and refactoring of launcher code 2018-04-13 15:23:35 +07:00
Henning Koehler
2ede3783dd Settings: savefrequency is now configurable in launcher
* Client command-line can modify arbitrary settings now
* Only launcher auto-saves to settings.json
2018-04-08 17:12:29 +07:00
Michał Kalinowski
968bd4a7da Setting policy CMP0071 for launcher cmake
CMake from version 3.10.2 warns when the policy is not set.
Reference: https://cmake.org/cmake/help/v3.10/policy/CMP0071.html
2018-02-24 08:22:37 +03:00
Dydzio
38d836d1a5 Update project files to Visual Studio 2017 2018-01-13 16:33:49 +01:00
Michał Kalinowski
26a222ac62 Change JsonType to enum class (#393)
Change enum JsonType to enum class JsonType
2017-11-27 00:18:18 +03:00
Arseniy Shestakov
1110dd27d1 Launcher: use QDesktopWidget to get display list instead of SDL2
First of all SDL2 trying to use dbus and this conflict with Qt. Check mantis#2704.
And there no reason to use SDL2 in launcher when Qt can do the same thing as well.
2017-08-24 04:55:44 +03:00
Arseniy Shestakov
525ee8771a Launcher: avoid menu items not overlap so it's look slightly better
It's still very ugly, but less ugly than it's was.
2017-08-24 03:04:40 +03:00
Dydzio
ea17b0f458 Major overhaul of VS related files 2017-08-19 15:58:55 +02:00
Dydzio
e3ba491fa1 Use multi-core compile by default, fix VCMI_client path 2017-08-19 13:27:24 +02:00
Arseniy Shestakov
03c7bf5ee6 CMake: installer building improvements for Windows
- Implement support for BundleUtilities when Vcpkg is used
- Add some hacky code to copy Qt plugins install directory
- Use same icon for launcher as used for VCMI, launcher one is ugly
2017-08-16 18:34:46 +03:00
Arseniy Shestakov
2b3a467728 CMake: structure changes and other small improvements
- Now cmake_minimum_required used properly and set to 2.8.12
- cmake_modules/CMakeCPackOptions.cmake.in is removed
2017-08-16 16:10:08 +03:00
Arseniy Shestakov
40af43c46e CMake: massive rework for Mac build and other improvements
- macOS: RPATH-related code all removed or disabled
- macOS: new osx/CMakeLists.txt to run some install-code running after all subdirectories
- Assets copying into the runtime output directory implemented for Mac and Linux development
2017-08-16 16:10:07 +03:00
Arseniy Shestakov
7dca95c8cc CMake: multiple improvements for builds and project generation
- Change default build output directory name from "build" to "bin"
- Implement new function vcmi_get_cmake_debug_info
- Link client with SDL2main on Windows and disable debug console
- Remove all old MinGW-specific options since they outdated and MXE work fine
- Set AUTOGEN_TARGETS_FOLDER for better Xcode and Visual Studio projects
- Remove useless vcmitestFiles custom target for less garbage in project files
2017-08-16 16:10:07 +03:00
Arseniy Shestakov
56f89270db macOS: full rework of Mac packaging process
- Most of outdated CMakeLists code removed.
- All Mac-specific code is removed include Sparkle support and vcmibuilder app.
- DMG buidling reimplemented using macdeployqt command.
2017-08-16 16:10:07 +03:00
Arseniy Shestakov
193f492b99 CMake: cleanup, project generation and other improvements
- Use EXCLUDE_FROM_ALL for FuzzyLite and GoogleTest to avoid inclusion of unneded headers and libraries into installers.
- Set minimum CMake version only in main CMakeLists.txt
- Set project name only in main CMakeLists.txt
- Visual Studio: add assign_source_group function to generate proper filesystem tree
- Visual Studio: set PROJECT_LABEL so generated projects have same names binaries on Windows
- Visual Studio: enabled USE_FOLDERS for projects grouping. This also possibly affect other IDEs.
- Added add_subdirectory_with_folder function to make sure 3rd-party libraries are affected by USE_FOLDERS.
2017-08-16 16:10:07 +03:00
AlexVinS
15138c23de Finished conversion to new logging API
* removed logger streams
* (float3|int3)::operator() -> (float3|int3)::toString(), it was too ugly and confusing.
2017-08-11 23:06:27 +03:00
AlexVinS
f2de6d1122 fix 2017-08-11 17:38:28 +03:00
Arseniy Shestakov
21074e13c3 macOS: always change working directory for launcher and server
This make relative paths work properly when launched from DMG or from different directory.
2017-08-09 01:33:12 +03:00
ArseniyShestakov
b52cfe5283 Code style: use parentheses for creating heap-based objects (#344) 2017-07-16 12:58:05 +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
Arseniy Shestakov
99d3b9e37a CMake: add all launcher headers to CMakeLists.txt 2017-07-13 02:44:58 +03:00
ArseniyShestakov
fcd63cd982 Merge pull request #333 from dydzio0614/RealFullscreen
Add optional real fullscreen mode support
2017-07-10 21:04:24 +03:00
Dydzio
c377f594a5 Add optional real fullscreen mode support 2017-07-08 18:43:04 +02:00
Victor Luchits
30cc2f6a01 Change the output path for cmake so all files go into the same root directory 2017-07-07 13:08:53 +03:00
Arseniy Shestakov
6642816b1e Client: server port and testing options cleanup
Now we only pass port as ui16 instead of std::string
2017-06-04 08:49:23 +03:00
Arseniy Shestakov
5d8e943787 Launcher: add sanity checks for QDir::removeRecursively. Issue 2673
I'm not always fail to uninstall mod, but when I do I remove $HOME
Bumblebee developers should be proud of us...
2017-05-25 03:03:02 +03:00
DjWarmonger
a75d981962 Merge pull request #282 from drizt/resolution-combobox
Makes sense to me, thanks!
2017-02-20 08:46:31 +01:00
Michał Janiszewski
f5ebc763b4 Add override keyword where applicable 2017-02-17 14:39:16 +01:00
Ivan Romanov
739cb9b2c5 Avoid scroollbar in resolution combobox 2017-02-17 14:00:55 +05:00
Michał Kalinowski
4d39f652bf Making more detailed options when choosing AI in launcher: http://
bugs.vcmi.eu/view.php?id=2369
2017-01-17 12:34:28 +01:00
DjWarmonger
80d5f7b4a4 Updated project files to MVS 2015 (in fact, it's trivial). 2016-12-12 19:14:45 +01:00
DjWarmonger
092a0c305b MSVS project update. 2016-11-25 18:17:40 +01:00
Arseniy Shestakov
cb3d6a24e7 Cmake: cleanup for commit hash in build version
Since it's available in lib we don't need to include it everywhere.
2016-10-27 17:01:29 +03:00
Vadim Markovtsev
da1c9cf249 Fix rebuilding everything on HEAD change 2016-10-23 16:56:53 +02:00
Vadim Markovtsev
ac3c231fee Fix launcher's UI for Ubuntu's scaled view on Retina displays 2016-10-02 00:31:22 +02:00
DjWarmonger
d2bd749b4f MSVS project fixes. 2016-09-04 13:30:11 +02:00
ArseniyShestakov
5fc1fd4daf Merge pull request #206 from Chocimier/fixes
genBuildingRequirements is tricky one, but in tests it's seems everything is okay
2016-09-04 09:02:34 +03:00
Krzesimir Nowak
58bc0f7272 Allow choosing the display from the launcher
This adds another combobox for choosing the display. To ease the
display choice we try to roughly describe the display (its resolution
and location).

The combobox is hidden for single display setups.
2016-08-31 11:12:59 +02:00
Piotr Wójcik
a4f12fb007 Show downloaded mods with no need to reload remote repositories 2016-08-30 22:16:52 +02:00
Alexander Shishkin
5e5ce0bb09 Merge pull request #203 from vcmi/logFormat
boost::format support for CLogger
2016-08-29 17:32:44 +04:00
AlexVinS
9250d16016 [c::b] project files tweak 2016-08-18 12:22:34 +03:00
AlexVinS
72f79a3ad7 Draft boost::format based log proxy. 2016-08-13 16:57:09 +03:00
ArseniyShestakov
890ae43f55 Merge pull request #180 from Zyx-2000/FileInfo
Refactored CFileInfo & ResourceID
2016-02-08 04:55:39 +03:00
Zyx-2000
3a1a8e3d47 further refactoring-related changes 2016-01-29 15:16:14 +01:00
DjWarmonger
327e95407e - Compile fixes part 1
- Project settings for MSVS
2016-01-27 21:08:08 +01:00
Zyx-2000
7166efef15 added code::blocks project file for launcher. note that it is far from perfect at the moment 2016-01-18 17:50:14 +01:00
Zyx-2000
00d1fd3aec some fixes for launcher 2016-01-16 19:44:15 +01:00
Zyx-2000
cf61837ced replaced std::string with boost::filesystem::path in several places 2016-01-16 16:36:16 +01:00
Zyx-2000
933b7c1f5e some modernization of CFileInputStream implementation code 2016-01-12 23:40:24 +01:00
Zyx-2000
f9b255c896 Cleaner code & MSVC compatibility 2016-01-12 22:40:05 +01:00
Zyx-2000
203b2dccc3 hopefully fixed things 2016-01-09 21:23:55 +01:00
Ivan Savenko
faa7cbff18 Fixed gcc/clang warnings 2015-12-04 01:17:43 +02:00
Ivan Savenko
a3d4f9d22f Fixed conversion warnings caused by Qt 2014-11-12 22:46:36 +02:00
josch
b962e11bd7 Launcher: add setting allowing not to automatically check remote repositories
- add a button to the launcher which allows manual downloading
 - add a configuration option autoCheckRepositories to launcher settings
 - add ui elements to settings dialog to change autoCheckRepositories
2014-11-10 08:21:47 +01:00
Mikhail Paulyshka
7b7282f52e fix launcher linking problem for MSVC 2014-10-12 16:40:49 +03:00
Mikhail Paulyshka
b8f5a57c64 Include ZLib headers for launcher and server 2014-10-12 16:33:38 +03:00
Mikhail Paulyshka
ab5e1f9109 don't use separate .rc files for MSVC and MinGW 2014-10-12 16:32:02 +03:00
Ivan Savenko
b551bdb725 Final part of the merge
Merging VCMI Dirs refactoring + GUI refactoring with current develop
2014-09-04 20:59:07 +03:00
DjWarmonger
0edaf4fa8a Merge pull request #26 from vcmi/FFMpeg
Let's do this, way too many branches running now.
2014-09-01 10:35:30 +02:00
DjWarmonger
8b10f70afd Migrating to MSVS 2013, which allows to delete inttypes.h file. 2014-08-31 19:08:39 +02:00
Karol
958839668c VCMIDirs update #5
- Minor fixes
- string based paths -> boost::filesystem::path paths (I hope it's
final)
- New user data path on windows
- New moving dir method on windows.
2014-08-21 22:26:28 +02:00
Ivan Savenko
00cda400a1 Miscellaneous improvements for Launcher UI:
- Implemented "show intro" toggle in settings
- Install/Update/Enable buttons are now visible even when mod info is hidden
- Fixed behaviour of show mod info switch, added more obvious button to enable it
- Removed no longer used "Enable mods on install" switch
- Added buttons to open data, user data and temporary directories
2014-08-04 14:03:57 +03:00
Michael Pavlyshko
6a23960642 CMake/WIN32 : add icon to client and launcher 2014-07-14 01:02:00 +03:00
Michael Pavlyshko
bad7050096 spaces -> tabulation 2014-07-11 11:01:03 +03:00
Michael Pavlyshko
c25ccc2acb Rename: vcmi.dll -> VCMI_lib.dll, vcmilauncher.exe -> VCMI_launcher.exe 2014-07-11 01:09:00 +03:00
Michael Pavlyshko
29e6c2c412 add WIN32 flag for vcmilauncher to hide console window 2014-07-11 00:57:17 +03:00
DjWarmonger
9e7013de77 Backup for my own MVS project configuration 2014-04-24 21:07:43 +02:00
Ivan Savenko
791099ab33 - added *_moc suffix to imageviewer files 2014-03-29 12:46:41 +00:00
Ivan Savenko
771c1ce255 - some effords to get rid of bottlenecks in AI code
- fixes, probably partially #1577
- enabled code for reading map object templates from json, still not
used
- disabled PCH for launcher due to speed issues.
2014-03-23 16:36:16 +00:00
Ivan Savenko
9dda194ed3 Support for new fields in mod format including:
- screenshots, repository-only field, will be used by launcher to d/l
screeenshots
- screenshots will be viewed as thumbnails with switch to full view on
click
- changelog that is now visible in launcher
- somewhat better handling of submods by launcher
2014-03-23 12:08:01 +00:00
Ivan Savenko
760ae7d44a Changes related to Debian packaging, based on josch patch
- AUTHORS file is now in UTF-8
- tags for desktop files
- fixed some typos
- better reaction on --help and --version commands
- vcmibuilder should work with both avconf and ffmpeg
2014-03-20 18:17:40 +00:00
Ivan Savenko
333a51a48a Launcher now supports submods. See forum thread for details. 2014-03-20 17:06:25 +00:00
Ivan Savenko
7f6f125b4c First part of submods support.
- VCMI will load mods from Mods directory recursively. Submods must be
placed into additional Mods directory, e.g.
<data dir>/Mods/<mod name>/Mods/<submod name>

- submods will be loaded only if their parent mod was enabled
- submods namespace for objects will be "<parent mod ID>.<submod ID>"

- TODO: Launcher is not aware of submods yet (seems to be working but
may behave incorrectly)
2014-03-15 10:57:34 +00:00
Ivan Savenko
5cbec833c2 - (linux) XDG filesystem support
BIG NOTE TO LINUX USERS
All user data has been moved according to XDG specs:
- Game data (H3 files and mods) and saves: from ~/.vcmi to ~/.local/
- Temporary files, including logs: from ~/.vcmi to ~/.cache/vcmi
- Config files: from ~/.vcmi/config to ~/.config/vcmi

For compatibility VCMI will read game data from ~/.vcmi as well but this
is temporary behavior and will be removed
2014-03-04 14:51:10 +00:00
Michał W. Urbańczyk
43ef565e7e Added serializer-based class able to make deep copies of objects — CMemorySerializer.
CGameState::init will work on the deep copy of StartInfo.
Some casts to reduce warnings.
2014-02-08 21:54:35 +00:00
beegee1
95034b9fa0 - Updated PCH to use our StdInc.h as the prefix header (not generated one from cotire) -> no exclude headers from ffmpeg/etc... statements required
- Fixed compilation error (VCAI ResourceSet logging)
2014-02-05 20:25:36 +00:00
beegee1
df0a28d9cb - added PCH compilation for CMake using cotire module (PCH is OFF per default, can be enabled with ENABLE_PCH=ON) 2014-02-01 13:37:26 +00:00
Ivan Savenko
27be6a8f13 - new mods (not mentioned in modSettings.json) will be enabled by
default
2014-01-30 14:51:15 +00:00
Ivan Savenko
45c186bba8 some code cleanup in launcher, tweaked appearence of mod list 2014-01-30 12:35:17 +00:00
Ivan Savenko
3779a54ddd - probably fixed 1671
- fixed missing loss condition in Birth of Barbarian
- fixed some bugs found by cppcheck
2014-01-30 11:08:37 +00:00
Michał W. Urbańczyk
edacdf34e5 Sometimes, when working with MS Build projects I feel pure, unconditional hate.
Now Launcher should work with MSVC 2013.
2014-01-06 22:11:43 +00:00
Ivan Savenko
ed329c5a1f - minor refactoring for filesystem, moved checksum calculation to
loading stage from initialization
- fixes for launcher
2013-12-11 17:12:39 +00:00
Ivan Savenko
5de70ba235 Minor fixes:
- properly re-enable necessary mods during update
- do not crash if building border is fully-colored
2013-12-08 10:07:06 +00:00
Ivan Savenko
2b6cdd5f41 - (linux) launcher will be available in OS start menu/launchers as
"VCMI" and client will be present as "VCMI Client"
2013-11-16 18:13:30 +00:00
Ivan Savenko
2b3405fa50 - minor optimizations
- fixed incorrect error reporting in launcher
- set WoG version to "0.0.0" so full version will be installed from repo
in future
- updated debian required packages list
- launcher will be enabled by default
2013-11-14 13:21:09 +00:00
Ivan Savenko
29e98b2d51 - modhandler will only validate new, changed or mods that failed
validation last time.
- fixed several issues with modSettings.json file
- some refactoring of modhandler, still needs some work.
2013-11-09 19:10:16 +00:00
Ivan Savenko
dd73573c5c - vcmi can now calculate crc32 checksum of a file
- reorganized internal filesystem structure - all files from one mod are
now grouped in same FS node
- modhandler will now calculate crc32 checksum for each mod
- modhandler now knows validation status of each mod

todo - use checksum to determine mods that have not changed since last
start and disable validation for them.
2013-11-08 20:36:26 +00:00
Ivan Savenko
c4716d0a9a - reordered files in cmake so files with long compile times will be
compiled first.
- changed format of modSettings.json, VCMI should properly update file
on the first run.
- implemented property "defaultTavern" that acts as default value for
"tavern" entry in hero class and town formats.
2013-11-03 12:07:23 +00:00
Ivan Savenko
e2c037402c Unicode support.
- boost-locale library is now required (boost 1.48 or higher)
- Unicode namespace that contains UTF-8 handling
- All non-ASCII strings from H3 data will be converted to UTF-8 during loading
- All JSON files MUST use UTF-8. 
- H3 data encoding can be selected via launcher or directly in config file
2013-10-25 21:45:14 +00:00
stopiccot
cbc8cde10a some OS X fixes 2013-10-07 01:19:02 +00:00
Ivan Savenko
03bca320fe - fixed update presence detection in launcher 2013-10-01 15:14:05 +00:00
Ivan Savenko
eb6ff6b114 fixes #1482, add one pixel spacing for Chinese fonts 2013-09-25 21:15:15 +00:00
Ivan Savenko
208df34fc2 bigfixing & new file: launcher/jsonutils.cpp
- launcher uses json parser from vcmi lib instead of one from Qt #1469
- fixed abilities overrides for some creatures #1476
- fixed hero portraits in seer huts #1402
- ttf fonts will render text in utf-8 mode. Not really useful at this point
- new settings entry, available in launcher: encoding. Unused for now.
2013-09-21 18:29:26 +00:00
Ivan Savenko
6331995afd minors:
- fixes missing line of pixels with Chinese fonts
- disabling a mod won't disable all its requirements as well
2013-09-08 18:35:09 +00:00
Ivan Savenko
e13dc872e0 - support for Chinese fonts (GBK 2-byte encoding)
- fixes #1446
2013-09-08 16:49:23 +00:00
Ivan Savenko
42879225f0 minor fixes:
- don't crash if image can't be player-colored (no palette)
- fixes #1447
- compile fix
2013-09-08 13:02:34 +00:00
Ivan Savenko
8515bd037d basic error reporting for launcher. 2013-09-05 21:25:03 +00:00
Ivan Savenko
0a627698d8 - fixes crash on giving banned skills to hero (partial #1427)
- fixes hover text for prisons - they should not display name of imprisoned hero
- missing bits for launcher, Linux-specific
2013-09-04 23:00:51 +00:00
Michał W. Urbańczyk
f217c61131 Added launcher to solution, fixed .rc file so launcher has its icon. 2013-09-04 20:12:37 +00:00
Michał W. Urbańczyk
a50e9219c2 Launcher works for me.
Details: http://forum.vcmi.eu/viewtopic.php?p=10290#10290
2013-09-02 17:26:52 +00:00
Ivan Savenko
4287b2b7bb fixes for launcher, as discussed on forums:
- renamed files that should be preprocessed with moc: they will have _moc suffix (cpp files were also renamed for consistency)
- fixed disabling of mods that have dependent on them mods
- repositories will be reloaded if changed
- may have fixed non-starting vcmi client on Win
2013-08-24 20:11:51 +00:00
DjWarmonger
0c717618c5 Project finally compiles. 2013-08-23 09:19:13 +00:00
DjWarmonger
7a1752ef32 Almost there, linker issues are gone. 2013-08-23 08:30:31 +00:00
DjWarmonger
4be6f131c4 More work on launcher project 2013-08-23 06:42:49 +00:00
DjWarmonger
4a8dbf2f2b Not-yet-finished project for Visual Studio. Needs moc tool. 2013-08-22 17:47:49 +00:00
Ivan Savenko
7cbfdd509c VCMI Launcher/Mod manager. See forum post for details. 2013-08-22 14:22:49 +00:00