elsid
04d7781424
Support not only StringRefId for checking first person body part
2023-03-19 17:49:41 +01:00
elsid
e6cf516e12
Support index RefId as pair of record type and std::uint32_t
2023-03-19 17:20:48 +01:00
elsid
0992624c8b
Support reading and writing typed ESM::RefId to ESM
2023-03-19 17:20:48 +01: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
elsid
99069b02e4
Remove unused variable
2023-03-18 13:40:45 +01:00
psi29a
d64eea2fc6
Merge branch '7113-move-from-std-atoi-to-std-from_char' into 'master'
...
Move from std::atoi to std::from_char
Closes #7113
See merge request OpenMW/openmw!2760
2023-03-18 09:30:48 +00:00
Shi Han
a90e3b8c3b
Move from std::atoi to std::from_char
2023-03-18 09:30:48 +00:00
elsid
e892c62b10
Fix loading, inserting and moving topic info records
...
Topic info records need to have specific order defined via mNext and mPrev
fields (next and previous records). When loading multiple files a record may be
inserted into middle of the topic but neighborhood records may not be aware of
it. Having the order it's possible to move the records within one topic.
Sort the record once after loading all content files but preserve the order for
all other operations. Use std::map to group info ids by topic to make sure the
topics order is stable. Keep order within a topic for info ids on loading new
records. Use this order later for sorting the records.
2023-03-13 21:57:38 +01:00
elsid
899c302b14
Avoid nested ifs
2023-03-13 11:31:16 +01:00
elsid
c8402c0b14
Avoid double assignment on info saving
2023-03-13 11:31:16 +01:00
elsid
d03bec60e9
Avoid redundant conversion from RefId to string and back
2023-03-03 15:44:19 +01:00
elsid
191f207e78
Avoid redundant conversion to lower case for CommandDispatcher::mSelection items
2023-03-03 15:44:19 +01:00
elsid
7daef583cb
Use ESM::RefId as key for ScriptContext::mLocals
2023-03-03 15:44:18 +01:00
elsid
693f4c40f4
Use ESM::RefId as key for Data::mRefLoadCache
2023-03-03 15:44:18 +01:00
elsid
419a86f0b9
Use ESM::RefId for actor parts
...
To avoid redundant conversion RefId to string and back.
2023-03-03 15:44:14 +01:00
elsid
4cb095ce39
Use ESM::RefId as key for MergeReferencesStage::mIndex
2023-03-03 15:41:56 +01:00
elsid
3c9dbb11cc
Use ESM::RefId as key for SavingState::mSubRecords
2023-03-03 15:41:53 +01:00
elsid
dfcea389be
Add helper functions for string comparison to RefId
2023-03-03 00:39:55 +01:00
elsid
c03d3360d9
Remove redundant virtual modifiers, add override and final modifiers
2023-02-28 21:18:38 +01:00
elsid
a09612264c
Fix setRecordId overload declaration
...
To match other declarations arguments order.
2023-02-27 23:35:50 +01:00
elsid
4ed0960856
Remove redundant IdAccessor type
...
Use overloaded free functions instead.
2023-02-25 13:49:22 +01:00
elsid
b5ec584be2
Replace ESM::RefId::sEmpty by default constructed RefId where possible
...
Static const is only required to provide a reference or a pointer when it is not
possible with default constructed temporary.
2023-02-18 01:07:15 +01:00
psi29a
d846a9fc15
Merge branch 'cs_optimize_saving' into 'master'
...
Fix editor saving performance
See merge request OpenMW/openmw!2741
2023-02-17 13:30:20 +00:00
elsid
e618026c69
Use ESM::RefId as index key in collections
2023-02-17 11:08:46 +01:00
elsid
b2299ef914
Optimize saving in editor
2023-02-17 11:05:25 +01:00
elsid
8383fa3547
Log time spent on document operations in editor
2023-02-17 00:23:02 +01:00
psi29a
18d488d968
Merge branch 'ref_id_class' into 'master'
...
Convert RefId to class
See merge request OpenMW/openmw!2739
2023-02-15 23:41:58 +00:00
elsid
996153f78d
Convert RefId to class
2023-02-15 23:20:44 +01:00
elsid
b6a2fd8fc1
Simplify InfoCollection
...
There was additional logic to create topic infos index by topic id to make
getTopicInfos and removeDialogueInfos functions faster. In practice it makes
loading slower.
Move infos index by topic to CSMWorld::Data and use only on loading.
2023-02-15 23:10:35 +01:00
elsid
de24cdc12c
Log content files loading time by editor
2023-02-15 21:29:13 +01:00
elsid
080700f8fe
Name all custom ESM format versions and add tests
2023-02-10 19:54:15 +01:00
Andrei Kortunov
7e2aedf637
Add an initial Qt6 support
2023-02-06 18:38:59 +04:00
psi29a
3f9cae7947
Merge branch 'dragdetails' into 'master'
...
[OpenMW-CS] Generate record filters based on cell content and column header
Closes #7161
See merge request OpenMW/openmw!2617
2023-02-03 09:29:36 +00:00
florent.teppe
3780033837
Reverts Cell name to a string
2023-01-21 18:39:42 +01:00
unelsson
fc64ab0f5a
Promise constness
2023-01-17 02:55:03 +02:00
unelsson
6a864cd9f6
Implement basic filter generation from the dragged table cell (cell content and column header)
2023-01-16 23:47:32 +02:00
unelsson
bc1027ee95
First draft of getting the exact drag start location
2023-01-16 23:47:32 +02:00
unelsson
7f8a84f2f2
Move Response column earlier
2023-01-14 16:19:37 +02:00
Andrei Kortunov
7c8fb79745
Suppress a warnings spam when user entered an invalid regular expression
2023-01-13 12:08:42 +04:00
Andrei Kortunov
7c709167d9
Simplify regex search in the editor
2023-01-13 11:28:49 +04:00
Andrei Kortunov
307a60e87c
Migrate from QRegExp to more modern QRegularExpression
2023-01-11 11:21:46 +04:00
elsid
c173348cbe
Use default initializers for ESM::RefNum members
...
Instead of unset function that is removed now and assignments all over the code.
2023-01-10 00:44:51 +01:00
florent.teppe
0de6b79966
Fixes issue with topic info edition.
...
Also future proofs reference on RefId's string.
2023-01-08 12:59:47 +01:00
florent.teppe
1b66be9c70
Fix dangling reference.
2023-01-02 19:47:12 +01:00
florent.teppe
1ef1de974d
script blacklist => RefId
...
Applies changes from review
Fixed clang format
Clang format + review.
2022-12-27 19:16:21 +01:00
florent.teppe
2c30575b3b
CellName is now a RefId, makes more sense that way.
2022-12-27 19:16:21 +01:00
florent.teppe
6ff90b34a8
Fixed an issue with RefId in CellRefs where Ids wouldn't be loaded
...
Fixed multiple issues from the review.
2022-12-27 19:15:58 +01:00
florent.teppe
0f3499f504
Renamed string => Id, makes more sense considering the new underlying type
...
Fixes unnecessary copies, and issues with case sensitive comparisons.
fixed modification that wasn't necessary
Fixed type mismatch, and unecessary copy
2022-12-27 19:15:57 +01:00
florent.teppe
30a020883e
Avoids unecessary copies
...
Fixed issue with lowerCase
Oups fixed compialtion on openMW_test_suite
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
09d461a8cd
fixed Topic selected event
...
Fix rebase
2022-12-27 19:15:56 +01:00
fteppe
62d8fe3fc2
changed a few hardcoded refIds used in mutliple places to be defined only once in a variable
2022-12-27 19:15:55 +01:00
fteppe
20da0892ef
openMW_test_suite compiles and runs
...
Slowly moving through the open-cs errors
Good progress in openCS
Very good progress on openCS
Getting closer with openCS
OpenCS compiles and runs! Didn't have time to test it all though
ix openMW
everything compiles on windows??
Fix gcc
Fix Clang
2022-12-27 19:15:55 +01:00
psi29a
fa50890633
Merge branch 'sm-snap-to-reference' into 'master'
...
Open-CS: Snap to Reference
See merge request OpenMW/openmw!2484
2022-11-08 15:30:26 +00:00
Petr Mikheev
6025943fed
Add missing content=builtin.omwscripts if openmw is started via openmw-cs ( fixes #7056 )
2022-11-05 16:30:44 +01:00
Max Henzerling
897cdc62d8
Add snap to reference
2022-11-04 15:04:42 -07:00
psi29a
6960fc9304
Merge branch 'opencs_iwyu' into 'master'
...
Run IWYU on the opencs
See merge request OpenMW/openmw!2481
2022-11-02 21:41:53 +00:00
Evil Eye
45cd5bdbd7
Ignore 0 attributes on dead NPCs
2022-11-01 20:14:40 +01:00
jvoisin
1a326294c0
Run IWYU on the opencs
2022-10-31 21:04:01 +01:00
jvoisin
cd29c181cf
Another pass with IWYU
2022-10-10 15:16:18 +02:00
elsid
843753da14
Remove unused includes
2022-10-09 16:44:18 +02:00
jvoisin
3cbf1dc042
First pass with include-what-you-use
2022-10-09 10:39:43 +00:00
Evil Eye
e6592aa850
Add key flag on load
2022-09-30 12:16:45 +02:00
clang-format-bot
88ec8a9523
Apply clang-format
2022-09-25 18:23:43 +02:00
Andrei Kortunov
3163d9ed56
Fix topic infos creation
2022-09-25 15:17:20 +04:00
clang-format-bot
ddb0522bbf
Apply clang-format to code base
2022-09-22 21:35:26 +03:00
elsid
410a2881fe
Add comma to the last array element to prevent putting multiple elements on a single line
2022-09-14 00:36:02 +02:00
elsid
51314db2f1
Remove AI_CNDT from AI package types
...
AI_CNDT is a label of subrecord containing cell name. It's not AI package type.
2022-09-13 00:05:12 +02:00
elsid
52b7b66e9f
Add comma to the last array element to prevent putting multiple elements on a single line
2022-09-12 21:00:51 +02:00
elsid
f269406061
Do not wrap emit expresison with parenthesis
...
To avoid warnings like following after clang-format applied:
apps/launcher/utils/profilescombobox.cpp:85:9: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
emit(signalProfileChanged(mOldProfile, currentText()));
^
apps/launcher/utils/profilescombobox.cpp:82:5: note: previous statement is here
if (index == -1)
^
2022-09-12 21:00:51 +02:00
Project579
ca14fc00dc
Added dedicated functions for conversions between QString and std::filesystem::path.
2022-09-11 14:41:21 +02:00
Project579
c226b35f1f
Fix some remaining encoding errors due to std::filesystem transition.
2022-09-11 14:41:20 +02:00
Project579
a13709c510
Replace implicit convertions from std::filesystem::path to std::string with correctly converting functions.
2022-09-11 14:41:20 +02:00
Project579
4d47e8d055
openmw-cs: model: world: data: Remove dead code.
2022-09-11 14:41:20 +02:00
Project579
e5c417c968
Make sure all paths are passed as std::filesystem::path instead of std::string where possible.
2022-09-11 14:41:15 +02:00
Project579
5446571aec
Circumvent QT MOC bugs by including the filesystem header in a specific order.
2022-09-11 02:19:07 +02:00
Project579
4bb07282c9
Replace all remaining occurrences of boost::filesystem with std::filesystem.
2022-09-11 02:19:00 +02:00
Evil Eye
fb9bc5f535
Use string_view in Fallback::Map
2022-08-28 17:20:49 +02:00
Evil Eye
2222b47e3d
Make Settings::Manager::getString return a reference
2022-08-28 16:38:11 +02:00
mpeco
9040209046
functor-based Qt signal-slot syntax construction set: changing visibility of certain slots for connecting on external/derived classes
2022-08-23 17:14:12 -03:00
mpeco
78700eee57
functor-based Qt signal-slot syntax construction set
2022-08-23 17:14:12 -03:00
elsid
2a79a8074a
Use forward declarations
2022-08-19 22:05:15 +02:00
elsid
b3882777ab
Cleanup opencs includes
2022-08-19 19:25:03 +02:00
elsid
bf1f4f2117
Mark private template functions defined in cpp as inline
2022-08-19 19:17:21 +02:00
Alexei Kotov
e537f2b6f3
Fix display for some package settings
2022-08-14 19:51:43 +03:00
elsid
f99ed6f1db
Split components/misc/stringops.hpp into multiple headers
...
Replace all ciEqual overloads with one having std::string_view as argument.
2022-08-03 22:06:24 +02:00
elsid
228a0dc723
Avoid redundant lowerCase call
2022-08-03 00:19:16 +02:00
elsid
ba69146ced
Use std::string_view to avoid redundant std::string construction
2022-08-03 00:18:55 +02:00
Alexei Kotov
0d18f76271
Editor: Decouple levelled list columns (bug #6705 )
2022-07-30 12:48:29 +03:00
Evil Eye
3967509cdd
Use meaningful names instead of pretending we don't know what snow is
2022-07-17 19:54:59 +02:00
psi29a
0eb674ec84
Merge branch 'settings_fix' into 'master'
...
Refactor usage of settings storage in the launcher and editor
See merge request OpenMW/openmw!2123
2022-07-12 13:00:52 +00:00
Andrei Kortunov
4b257e496e
Use static settings map for launcher and editor - the Settings::Manager has a static data anyway
2022-07-12 14:56:20 +04:00
Andrei Kortunov
a5b0ef0912
Avoid possible null dereference
2022-07-12 13:43:47 +04:00
Andrei Kortunov
42b9a6daaf
Do not use an invalid iterator
2022-07-12 12:45:11 +04:00
elsid
bef15edf0b
Remove redundant ostream, istream, iostream and sstream includes
...
* Replace by std::to_string and operator+ where possible.
* Move the code requiring to include <sstream> from .hpp to .cpp files.
2022-07-05 01:41:28 +02:00
Andrei Kortunov
aa349f2ed9
Initialize some missing variables
2022-07-03 15:44:50 +04:00
Bret Curtis
37a440a0ee
add one include back
2022-06-20 16:26:52 +02:00
jvoisin
8b9ed57348
Clean up Qt includes
2022-06-17 11:56:54 +02:00
Petr Mikheev
a70d5831c5
Lua scripts configuration in omwaddon
2022-06-05 01:36:39 +02:00
Evil Eye
db1a372e5b
Replace new with make_unique in opencs
2022-05-29 13:25:17 +02:00