1
0
mirror of https://gitlab.com/OpenMW/openmw.git synced 2025-01-30 12:32:36 +00:00

129 Commits

Author SHA1 Message Date
Andrei Kortunov
8879d89e4a Replace 'klass' by meaningful names 2024-01-07 19:12:49 +04:00
Evil Eye
81b8328bdd Include UString 2023-11-23 19:52:18 +01:00
Evil Eye
da9b0c5119 Use MyGUI::UString's new string_view support 2023-11-22 22:02:06 +01:00
Evil Eye
e660a9ca16 Assign StringRefIds to attributes 2023-08-20 10:28:46 +02:00
Evil Eye
abcebd49d2 Allow for more than 8 attributes 2023-06-19 20:41:54 +02:00
Evil Eye
75f0ad4e95 Dynamically build the attribute selection dialog 2023-06-18 19:55:33 +02:00
Evil Eye
2cb77ed48f Dehardcode skill selection 2023-06-08 18:35:52 +02:00
Evil Eye
65b22975c9 Remove SkillEnum 2023-06-08 18:35:50 +02:00
Evil Eye
6e39c0336c Handle non-string RefIds when displaying a class image 2023-06-06 17:41:13 +02:00
Evil Eye
7be005c9a5 Use std::array in CLDTstruct 2023-06-03 11:58:09 +02:00
unknown
14600de185 Remove sAttributeIds and sSkillIds 2023-05-27 21:54:13 +02:00
Evil Eye
877f6747be Deduplicate specialization code 2023-05-26 12:16:47 +02:00
Evil Eye
5491512905 Use string_view in more places and reduce the number of empty string literals 2023-05-21 16:39:32 +02:00
Petr Mikheev
f1beaa7b8c Put ESMStore to Environment 2023-04-20 21:45:49 +02:00
elsid
069d4255b9
Make ESM::RefId to be fixed size cheap to copy
Use std::variant. Store refId strings in unordered_set and use pointer to an
item there. Inserts to unordered_set do not invalidate pointers to values so the
pointer is always valid. Elements are not removed. Assume there is finite number
of string refIds.
2023-03-19 17:20:43 +01:00
florent.teppe
a7d0a8d9d1 Replaced some RefId* => RefId&
Rebase fix commit
2022-12-27 19:15:57 +01:00
florent.teppe
65cdd489fb create a specific esm reader function for RefID to avoid allocation for string and then again for RefId
Fixed some types

removed useless header

applied clang format

fixed compile tests

fixed clang tidy, and closer to logic before this MR

Removed hardcoded refids

unless there is a returned value we don't use static RefIds
can use == between RefId and hardcoded string

Fix clang format

Fixed a few instances where std::string was used, when only const std::string& was needed

removed unused variable
2022-12-27 19:15:57 +01:00
fteppe
c8bb733360 removed clear() function, the only way to change the Id from the outside is from the assignment operator
replaced ciEqual with == operator
2022-12-27 19:15:55 +01:00
fteppe
125b21de20 Initial commit: In ESM structures, replace the string members that are RefIds to other records, to a new strong type
The strong type is actually just a string underneath, but this will help in the future to have a distinction so it's easier to search and replace when we use an integer ID

Slowly going through all the changes to make, still hundreds of errors

a lot of functions/structures use std::string or stringview to designate an ID. So it takes time

Continues slowly replacing ids. There are technically more and more compilation errors

I have good hope that there is a point where the amount of errors will dramatically go down as all the main functions use the ESM::RefId type

Continue moving forward, changes to the stores

slowly moving along

Starting to see the fruit of those changes.

still many many error, but more and more Irun into a situation where a function is sandwiched between two functions that use the RefId type.

More replacements. Things are starting to get easier

I can see more and more often the issue is that the function is awaiting a RefId, but is given a string
there is less need to go down functions and to fix a long list of them.

Still moving forward, and for the first time error count is going down!

Good pace, not sure about topics though, mId and mName are actually the same thing and are used interchangeably

Cells are back to using string for the name, haven't fixed everything yet. Many other changes

Under the bar of 400 compilation errors.

more good progress <100 compile errors!

More progress

Game settings store can use string for find, it was a bit absurd how every use of it required to create refId from string

some more progress on other fronts

Mostly game settings clean

one error opened a lot of other errors. Down to 18, but more will prbably appear

only link errors left??

Fixed link errors

OpenMW compiles, and launches, with some issues, but still!
2022-12-27 19:15:54 +01:00
clang-format-bot
ddb0522bbf
Apply clang-format to code base 2022-09-22 21:35:26 +03:00
florent.teppe
0dd529ab1d With the records include removed from store.hpp, need to include the relevant files accross the codebase.Lots of touched files, but very little done 2022-09-06 13:26:13 +02:00
Evil Eye
1d21330fcc Return string_view from getGameSettingString 2022-08-24 22:16:03 +02:00
Evil Eye
0cded25033 Remove various string copies 2022-08-24 20:38:52 +02:00
elsid
1e739ec741
Use std::unique_ptr to manage dialogs lifetime 2022-08-21 21:04:21 +02:00
elsid
ce263af393
Use existing functions and objects to call correctMeshPath etc
Remove WindowManager wrappers.

It's not safe to use WindowManager in all places and it's not required.
Environment stores resource system providing VFS required to call these
functions. In the case of ObjectPaging it's available from the member variable.
Also ObjectPaging::createChunk may access WindowManager when it's already
destructed when exiting the game because it's destructed before CellPreloader
finishes all background jobs. Engine::mResourceSystem is destructed after all
other systems so it's safe to use it.
2022-06-29 00:58:49 +02:00
jvoisin
a15cca5763 Use reserve on vectors for fixed loops
This is a bit useless, but has the merit of appeasing clang-tiday
2021-08-29 20:18:49 +02:00
Andrei Kortunov
8084a336b5 Replace zeroes and nulls by nullptrs 2020-11-29 11:14:07 +04:00
Andrei Kortunov
065ed5138e Use emplace_back instead of push_back 2020-10-18 10:27:35 +04:00
Capostrophic
56539fee4f Partially revert "Get rid of redundant setKeyFocusWidget() method" 2019-06-09 02:12:44 +03:00
Andrei Kortunov
faf940546b Get rid of redundant setKeyFocusWidget() method 2019-05-17 19:09:40 +04:00
Andrei Kortunov
8df8bd3f37 Use C++11-style loops in the GUI instead of iterators 2019-03-02 13:27:59 +04:00
Andrei Kortunov
e06f0b797a Replace all NULLs to nullptr 2018-10-09 10:21:12 +04:00
Andrei Kortunov
5a4d0cec3a Use new logging system for game itself 2018-08-14 23:05:43 +04:00
Andrei Kortunov
55db3c2712 Set default values for class and birthsign select menus (bug #4226) 2017-11-25 11:35:29 +04:00
scrawl
be19f51013 Adjust some more windows to be keyboard friendlier 2017-09-24 19:08:14 +02:00
scrawl
4fff2e2e34 Refactor exitCurrentGuiMode 2017-09-24 19:08:13 +02:00
scrawl
01391b7eed Rename WindowBase's open/close to onOpen/onClose 2017-09-24 19:08:12 +02:00
Andrei Kortunov
e0bb9c089b Revert commit 67d59bead51ce4948c0e0256ee014bdab3bc8b5f (a better
implementation found)
2017-08-19 15:24:06 +04:00
Andrei Kortunov
67d59bead5 Get only text from input fields (bug #4025) 2017-08-16 15:03:04 +04:00
Allofich
6ec37b5cfb Fix shadowing warnings 2016-10-02 17:48:54 +09:00
scrawl
92c2a10de4 Fall back to 'warrior' for not found class images (Fixes #3228) 2016-03-24 16:52:16 +01:00
scrawl
90cc1de46c Do not list custom made classes in the pick class dialog 2016-03-21 11:46:25 +01:00
scrawl
d4c45efb2b Remove useless #undef's for windows now that we have NOMINMAX flag 2015-06-12 04:39:44 +02:00
scrawl
eecea4131f Reduce MyGUI includes 2015-01-10 02:50:43 +01:00
scrawl
363d1f9207 Merge remote-tracking branch 'upstream/master' 2014-12-30 23:01:45 +01:00
scrawl
9a1bde684f Sort class list in select class dialog 2014-12-24 15:45:14 +01:00
scrawl
f931ba2efc Fix some static analysis issues (coverity) 2014-12-24 15:45:12 +01:00
Alexander "Ace" Olofsson
462b41a3a8 Missing files, aka; Why you shouldn't stresscommit 2014-12-19 11:26:54 +01:00
scrawl
7252cb63a6 Fix cppcheck issues 2014-09-26 17:48:14 +02:00
scrawl
088d01d727 Minor cleanup 2014-09-24 23:50:28 +02:00