1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-02-01 11:45:34 +00:00
Commit graph

52 commits

Author SHA1 Message Date
psi29a
5e76c124a7 Merge branch 'font_fixes' into 'master'
Font fixes

See merge request OpenMW/openmw!2297

(cherry picked from commit 7bb1856b74)

c3d3f314 Allow to change font settings in the launcher
2cd2b42e Improve handling of larger font size
2cae8bea Improve layout of Interface tab
3117a993 Fix documentation
2022-08-18 12:53:54 +00:00
Andrei Kortunov
a787625c65 Remove code which became redundant due to changes in way how we load bitmap fonts 2022-07-27 12:15:07 +04:00
elsid
5f800279ac
Remove unused Gui::FontLoader::mTextures 2022-07-26 12:33:27 +02:00
Andrei Kortunov
845a812ebf Drop fonts export - users are supposed to use TrueType fonts or mods with legacy format 2022-07-18 10:40:03 +04:00
Andrei Kortunov
5bc5c1bb0c Use our fonts as a fallback 2022-07-18 09:57:20 +04:00
Andrei Kortunov
1f864e3127 Do not override monospace font 2022-07-18 00:04:43 +04:00
Andrei Kortunov
6f6b5ba04b Some refactoring 2022-07-17 22:01:48 +04:00
Andrei Kortunov
db686b25c2 Use fallback data from openmw.cfg to setup fonts 2022-07-17 22:01:48 +04:00
Andrei Kortunov
8513bc9620 Fix build error on MSVC 2022-07-17 22:01:48 +04:00
Andrei Kortunov
8fc3635c2c Use case-insensitive font keys, remove debug code 2022-07-17 22:01:48 +04:00
Andrei Kortunov
c47a48e25d Inject layout files to VFS 2022-07-17 22:01:48 +04:00
Andrei Kortunov
2630bc21dd Allow to override MyGUI layout 2022-07-17 22:01:48 +04:00
Andrei Kortunov
4ddba5142e Introduce font mappings 2022-07-17 22:01:48 +04:00
Andrei Kortunov
dd04bfccfb Load fonts 2022-07-17 22:01:48 +04:00
jvoisin
0cc304e659 Clean up MyGUI includes
This should improve incremental compilation.
2022-06-04 15:26:36 +02:00
jvoisin
6feb92a9bf Remove boost::filesystem from a couple of files 2022-05-24 21:18:21 +00:00
elsid
94c1d0cced
Use unique_ptr to store istream 2022-04-22 18:27:17 +02:00
elsid
071ab3f650
Fix out of bounds access for std::string_view 2022-02-14 19:56:50 +01:00
elsid
c75e938c46
Return string_view from Utf8Encoder functions
To avoid redundant std::string constructions.
2022-02-12 17:11:54 +01:00
Alexei Dobrohotov
7a0c13fcf8 Make better use of std::clamp 2021-11-06 08:47:32 +03:00
Cédric Mocquillon
6817282097 Move getFileExtension to common header and use instead of repeating same code 2021-09-14 18:09:55 +02:00
Cédric Mocquillon
c2df0949e2 Change normalizeFilename signature 2021-09-14 18:09:55 +02:00
Cédric Mocquillon
d4e26746a3 Use recurse subdirectory iterator to iterate over the VFS without exposing internal details 2021-09-14 18:09:54 +02:00
jvoisin
5c02e4dddc Delete an outdated/irrelevant comment 2021-06-29 22:52:40 +02:00
jvoisin
5470b3168b Use a switch-case instead of a map, on elsid@' advice
elsid@ said:

> From my measurements static map + exceptions is slower than original code
when loading polish morrowind localization by 25% with GCC 10.2.0. Switch-based
solution is about 25x times faster than the original and static map with find
only is ~20x faster.
2021-06-29 18:24:40 +02:00
jvoisin
770f91de77 Clean the fontloader's hack for polish font up
- The map can be static and const
- The map can be initialized inline
- No need to do a `find` + `[]` instead of `at`
2021-06-29 18:24:40 +02:00
jvoisin
aec3c74fa5 Sprinkle some [[noreturn]] where possible 2021-06-22 12:51:08 +02:00
Andrei Kortunov
33b8233887 Validate GUI scaling and place it to the launcher 2021-04-15 15:18:32 +04:00
Andrei Kortunov
903b89a0ff Add bound for UI scale factor, as it specified in docs 2021-04-10 11:21:53 +04:00
Gleb Mazovetskiy
1e113710ef Clean-up FontLoader::loadFontFromXml fix
Follow-up to !559
2021-01-23 17:14:56 +00:00
Gleb Mazovetskiy
bd7d5a8f92 Fix memory leak in FontLoader::loadFontFromXml
Tried building with -DCMAKE_CXX_FLAGS='-fsanitize=address -fsanitize-recover=address'
and this was one of the reported leaks.
2021-01-23 04:08:39 +00:00
Andrei Kortunov
6357bc3dad Catch MyGUI exceptions in the FontLoader destructor 2020-06-18 15:13:02 +04:00
Andrei Kortunov
396afe79f1 Move font loading to the FontLoader 2020-05-28 23:18:31 +04:00
Andrei Kortunov
3032b177a1 Remove redundant includes 2019-02-23 08:02:12 +04:00
Andrei Kortunov
7a986f38da Support for user-defined TrueType fonts 2018-09-12 14:31:01 +04:00
Andrei Kortunov
c9c0230d2a Scale journal fonts separately from common ones 2018-09-12 14:31:01 +04:00
Andrei Kortunov
c2c24a76a4 Handle MyGUI exceptions inside destructors 2018-09-11 11:11:27 +04:00
Andrei Kortunov
1452684d9e Use new logging system for components 2018-08-14 19:42:41 +04:00
tri4ng1e
d310d36ea3
[Fix] Some PVS-Studio and cppcheck fixes 2018-04-18 12:36:10 +00:00
tri4ng1e
d4d1703bcf
Some PVS-Studio and cppcheck fixes
cppcheck:
[apps/esmtool/record.cpp:697]: (performance) Prefer prefix ++/-- operators for non-primitive types.
[apps/esmtool/record.cpp:1126]: (performance) Prefer prefix ++/-- operators for non-primitive types.
[apps/esmtool/record.cpp:1138]: (performance) Prefer prefix ++/-- operators for non-primitive types.
[apps/niftest/niftest.cpp:36]: (performance) Function parameter 'filename' should be passed by reference.
[apps/niftest/niftest.cpp:41]: (performance) Function parameter 'filename' should be passed by reference.
[apps/opencs/model/prefs/boolsetting.cpp:25]: (warning) Possible leak in public function. The pointer 'mWidget' is not deallocated before it is allocated.
[apps/opencs/model/prefs/shortcuteventhandler.cpp:52]: (warning) Return value of std::remove() ignored. Elements remain in container.
[apps/openmw/mwstate/quicksavemanager.cpp:5]: (performance) Variable 'mSaveName' is assigned in constructor body. Consider performing initialization in initialization list.

PVS-Studio:
apps/opencs/model/filter/parser.cpp  582  warn  V560 A part of conditional expression is always true: allowPredefined.
apps/opencs/view/world/referencecreator.cpp  67  warn  V547 Expression '!errors.empty()' is always false.
apps/opencs/view/world/referencecreator.cpp  74  warn  V547 Expression '!errors.empty()' is always false.
apps/opencs/view/doc/loader.cpp  170  warn  V560 A part of conditional expression is always true: !completed.
apps/opencs/view/doc/loader.cpp  170  warn  V560 A part of conditional expression is always true: !error.empty().
apps/opencs/model/tools/pathgridcheck.cpp  32  err  V517 The use of 'if (A) {...} else if (A) {...}' pattern was detected. There is a probability of logical error presence. Check lines: 32, 34.
apps/opencs/model/world/refidadapterimp.cpp  1376  err  V547 Expression 'subColIndex < 3' is always true.

apps/openmw/mwgui/widgets.hpp  318  warn  V703 It is odd that the 'mEnableRepeat' field in derived class 'MWScrollBar' overwrites field in base class 'ScrollBar'. Check lines: widgets.hpp:318, MyGUI_ScrollBar.h:179.
apps/openmw/mwgui/widgets.hpp  319  warn  V703 It is odd that the 'mRepeatTriggerTime' field in derived class 'MWScrollBar' overwrites field in base class 'ScrollBar'. Check lines: widgets.hpp:319, MyGUI_ScrollBar.h:180.
apps/openmw/mwgui/widgets.hpp  320  warn  V703 It is odd that the 'mRepeatStepTime' field in derived class 'MWScrollBar' overwrites field in base class 'ScrollBar'. Check lines: widgets.hpp:320, MyGUI_ScrollBar.h:181
apps/openmw/mwmechanics/actors.cpp  1425  warn  V547 Expression '!detected' is always true.
apps/openmw/mwmechanics/character.cpp  2155  err  V547 Expression 'mode == 0' is always true.
apps/openmw/mwmechanics/character.cpp  1192  warn  V592 The expression was enclosed by parentheses twice: ((expression)). One pair of parentheses is unnecessary or misprint is present.
apps/openmw/mwmechanics/character.cpp  521  warn  V560 A part of conditional expression is always true: (idle == mIdleState).
apps/openmw/mwmechanics/pathfinding.cpp  317  err  V547 Expression 'mPath.size() >= 2' is always true.
apps/openmw/mwscript/interpretercontext.cpp  409  warn  V560 A part of conditional expression is always false: rank > 9.
apps/openmw/mwgui/windowbase.cpp  28  warn  V560 A part of conditional expression is always true: !visible.
apps/openmw/mwgui/journalwindow.cpp  561  warn  V547 Expression '!mAllQuests' is always false.
apps/openmw/mwgui/referenceinterface.cpp  18  warn  V571 Recurring check. The '!mPtr.isEmpty()' condition was already verified in line 16.
apps/openmw/mwworld/scene.cpp  463  warn  V547 Expression 'adjustPlayerPos' is always true.
apps/openmw/mwworld/worldimp.cpp  409  err  V766 An item with the same key '"sCompanionShare"' has already been added.
apps/openmw/mwworld/cellstore.cpp  691  warn  V519 The 'state.mWaterLevel' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 689, 691.
apps/openmw/mwworld/weather.cpp  1125  warn  V519 The 'mResult.mParticleEffect' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 1123, 1125.
apps/openmw/mwworld/weather.cpp  1137  warn  V519 The 'mResult.mParticleEffect' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 1135, 1137.

apps/wizard/unshield/unshieldworker.cpp  475  warn  V728 An excessive check can be simplified. The '(A && B) || (!A && !B)' expression is equivalent to the 'bool(A) == bool(B)' expression.
apps/wizard/installationpage.cpp  163  warn  V735 Possibly an incorrect HTML. The "</p" closing tag was encountered, while the "</span" tag was expected.

components/fontloader/fontloader.cpp  427  err  V547 Expression 'i == 1' is always true.
components/nifosg/nifloader.cpp  282  warn  V519 The 'created' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 278, 282.
components/esm/loadregn.cpp  119  err  V586 The 'clear' function is called twice for deallocation of the same resource. Check lines: 112, 119.
components/esm/cellref.cpp  178  warn  V581 The conditional expressions of the 'if' statements situated alongside each other are identical. Check lines: 175, 178.
components/esmterrain/storage.cpp  235  warn  V560 A part of conditional expression is always true: colStart == 0.
components/esmterrain/storage.cpp  237  warn  V560 A part of conditional expression is always true: rowStart == 0.
2018-04-18 12:36:10 +00:00
Capostrophic
1aa3ed0c18 Font loader fallback character reorganization (fixes #1987) 2018-03-31 20:16:44 +03:00
scrawl
4322e76cb6 Fix shadowing warnings 2016-08-29 12:38:24 +02:00
scrawl
231b217664 Build fix for MyGUI 3.2.1 2015-06-04 17:13:42 +02:00
scrawl
dd23981eab Font workaround for older MyGUI versions, works with 3.2.2 now 2015-06-03 18:00:45 +02:00
scrawl
5a759f8b0d GUI cleanup fix 2015-05-03 18:35:29 +02:00
scrawl
1b78acc2c0 Remove manual allocation for images 2015-05-02 18:06:17 +02:00
scrawl
6afb0e43ef Port FontLoader - requires MyGUI patch from https://github.com/MyGUI/mygui/pull/69 2015-05-01 01:44:21 +02:00
scrawl
4e69e7cc0f OpenMW compiles and runs w/o render window 2015-04-01 17:02:15 +02:00
scrawl
304277429f Rename variable to not show up in search for "TODO" comments. 2015-03-12 00:21:46 +01:00
dteviot
e197f5318b fixing MSVC 2013 warning C4244: & C4305
conversion from 'const float' to 'int', possible loss of data
conversion from 'double' to 'int', possible loss of data
conversion from 'float' to 'int', possible loss of data
2015-03-08 13:07:29 +13:00