Commit Graph

2121 Commits (e1665f39450dd9b70fa67a47bd3b26f4d9bdb9e9)

Author SHA1 Message Date
elsid 04d7781424
Support not only StringRefId for checking first person body part 2 years ago
elsid e6cf516e12
Support index RefId as pair of record type and std::uint32_t 2 years ago
elsid 0992624c8b
Support reading and writing typed ESM::RefId to ESM 2 years ago
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.
2 years ago
elsid 99069b02e4
Remove unused variable 2 years ago
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
2 years ago
Shi Han a90e3b8c3b Move from std::atoi to std::from_char 2 years ago
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.
2 years ago
elsid 899c302b14
Avoid nested ifs 2 years ago
elsid c8402c0b14
Avoid double assignment on info saving 2 years ago
elsid d03bec60e9
Avoid redundant conversion from RefId to string and back 2 years ago
elsid 191f207e78
Avoid redundant conversion to lower case for CommandDispatcher::mSelection items 2 years ago
elsid 7daef583cb
Use ESM::RefId as key for ScriptContext::mLocals 2 years ago
elsid 693f4c40f4
Use ESM::RefId as key for Data::mRefLoadCache 2 years ago
elsid 419a86f0b9
Use ESM::RefId for actor parts
To avoid redundant conversion RefId to string and back.
2 years ago
elsid 4cb095ce39
Use ESM::RefId as key for MergeReferencesStage::mIndex 2 years ago
elsid 3c9dbb11cc
Use ESM::RefId as key for SavingState::mSubRecords 2 years ago
elsid dfcea389be
Add helper functions for string comparison to RefId 2 years ago
elsid c03d3360d9
Remove redundant virtual modifiers, add override and final modifiers 2 years ago
elsid a09612264c
Fix setRecordId overload declaration
To match other declarations arguments order.
2 years ago
elsid 4ed0960856
Remove redundant IdAccessor type
Use overloaded free functions instead.
2 years ago
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.
2 years ago
psi29a d846a9fc15 Merge branch 'cs_optimize_saving' into 'master'
Fix editor saving performance

See merge request OpenMW/openmw!2741
2 years ago
elsid e618026c69
Use ESM::RefId as index key in collections 2 years ago
elsid b2299ef914
Optimize saving in editor 2 years ago
elsid 8383fa3547
Log time spent on document operations in editor 2 years ago
psi29a 18d488d968 Merge branch 'ref_id_class' into 'master'
Convert RefId to class

See merge request OpenMW/openmw!2739
2 years ago
elsid 996153f78d
Convert RefId to class 2 years ago
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.
2 years ago
elsid de24cdc12c
Log content files loading time by editor 2 years ago
elsid 080700f8fe
Name all custom ESM format versions and add tests 2 years ago
Andrei Kortunov 7e2aedf637 Add an initial Qt6 support 2 years ago
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
2 years ago
florent.teppe 3780033837 Reverts Cell name to a string 2 years ago
unelsson fc64ab0f5a Promise constness 2 years ago
unelsson 6a864cd9f6 Implement basic filter generation from the dragged table cell (cell content and column header) 2 years ago
unelsson bc1027ee95 First draft of getting the exact drag start location 2 years ago
unelsson 7f8a84f2f2 Move Response column earlier 2 years ago
Andrei Kortunov 7c8fb79745 Suppress a warnings spam when user entered an invalid regular expression 2 years ago
Andrei Kortunov 7c709167d9 Simplify regex search in the editor 2 years ago
Andrei Kortunov 307a60e87c Migrate from QRegExp to more modern QRegularExpression 2 years ago
elsid c173348cbe
Use default initializers for ESM::RefNum members
Instead of unset function that is removed now and assignments all over the code.
2 years ago
florent.teppe 0de6b79966 Fixes issue with topic info edition.
Also future proofs reference on RefId's string.
2 years ago
florent.teppe 1b66be9c70 Fix dangling reference. 2 years ago
florent.teppe 1ef1de974d script blacklist => RefId
Applies changes from review

Fixed clang format

Clang format + review.
2 years ago
florent.teppe 2c30575b3b CellName is now a RefId, makes more sense that way. 2 years ago
florent.teppe 6ff90b34a8 Fixed an issue with RefId in CellRefs where Ids wouldn't be loaded
Fixed multiple issues from the review.
2 years ago
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
2 years ago
florent.teppe 30a020883e Avoids unecessary copies
Fixed issue with lowerCase

Oups fixed compialtion on openMW_test_suite
2 years ago
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
2 years ago
fteppe 09d461a8cd fixed Topic selected event
Fix rebase
2 years ago
fteppe 62d8fe3fc2 changed a few hardcoded refIds used in mutliple places to be defined only once in a variable 2 years ago
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
2 years ago
psi29a fa50890633 Merge branch 'sm-snap-to-reference' into 'master'
Open-CS: Snap to Reference

See merge request OpenMW/openmw!2484
2 years ago
Petr Mikheev 6025943fed Add missing content=builtin.omwscripts if openmw is started via openmw-cs (fixes #7056) 2 years ago
Max Henzerling 897cdc62d8 Add snap to reference 2 years ago
psi29a 6960fc9304 Merge branch 'opencs_iwyu' into 'master'
Run IWYU on the opencs

See merge request OpenMW/openmw!2481
2 years ago
Evil Eye 45cd5bdbd7 Ignore 0 attributes on dead NPCs 2 years ago
jvoisin 1a326294c0 Run IWYU on the opencs 2 years ago
jvoisin cd29c181cf Another pass with IWYU 2 years ago
elsid 843753da14
Remove unused includes 2 years ago
jvoisin 3cbf1dc042 First pass with include-what-you-use 2 years ago
Evil Eye e6592aa850 Add key flag on load 2 years ago
clang-format-bot 88ec8a9523
Apply clang-format 2 years ago
Andrei Kortunov 3163d9ed56 Fix topic infos creation 2 years ago
clang-format-bot ddb0522bbf
Apply clang-format to code base 2 years ago
elsid 410a2881fe
Add comma to the last array element to prevent putting multiple elements on a single line 2 years ago
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.
2 years ago
elsid 52b7b66e9f
Add comma to the last array element to prevent putting multiple elements on a single line 2 years ago
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)
    ^
2 years ago
Project579 ca14fc00dc Added dedicated functions for conversions between QString and std::filesystem::path. 2 years ago
Project579 c226b35f1f Fix some remaining encoding errors due to std::filesystem transition. 2 years ago
Project579 a13709c510 Replace implicit convertions from std::filesystem::path to std::string with correctly converting functions. 2 years ago
Project579 4d47e8d055 openmw-cs: model: world: data: Remove dead code. 2 years ago
Project579 e5c417c968 Make sure all paths are passed as std::filesystem::path instead of std::string where possible. 2 years ago
Project579 5446571aec Circumvent QT MOC bugs by including the filesystem header in a specific order. 2 years ago
Project579 4bb07282c9 Replace all remaining occurrences of boost::filesystem with std::filesystem. 2 years ago
Evil Eye fb9bc5f535 Use string_view in Fallback::Map 2 years ago
Evil Eye 2222b47e3d Make Settings::Manager::getString return a reference 2 years ago
mpeco 9040209046 functor-based Qt signal-slot syntax construction set: changing visibility of certain slots for connecting on external/derived classes 2 years ago
mpeco 78700eee57 functor-based Qt signal-slot syntax construction set 2 years ago
elsid 2a79a8074a
Use forward declarations 2 years ago
elsid b3882777ab
Cleanup opencs includes 2 years ago
elsid bf1f4f2117
Mark private template functions defined in cpp as inline 2 years ago
Alexei Kotov e537f2b6f3 Fix display for some package settings 2 years ago
elsid f99ed6f1db
Split components/misc/stringops.hpp into multiple headers
Replace all ciEqual overloads with one having std::string_view as argument.
2 years ago
elsid 228a0dc723
Avoid redundant lowerCase call 2 years ago
elsid ba69146ced
Use std::string_view to avoid redundant std::string construction 2 years ago
Alexei Kotov 0d18f76271 Editor: Decouple levelled list columns (bug #6705) 2 years ago
Evil Eye 3967509cdd Use meaningful names instead of pretending we don't know what snow is 3 years ago
psi29a 0eb674ec84 Merge branch 'settings_fix' into 'master'
Refactor usage of settings storage in the launcher and editor

See merge request OpenMW/openmw!2123
3 years ago
Andrei Kortunov 4b257e496e Use static settings map for launcher and editor - the Settings::Manager has a static data anyway 3 years ago
Andrei Kortunov a5b0ef0912 Avoid possible null dereference 3 years ago
Andrei Kortunov 42b9a6daaf Do not use an invalid iterator 3 years ago
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.
3 years ago
Andrei Kortunov aa349f2ed9 Initialize some missing variables 3 years ago
Bret Curtis 37a440a0ee add one include back 3 years ago
jvoisin 8b9ed57348 Clean up Qt includes 3 years ago
Petr Mikheev a70d5831c5 Lua scripts configuration in omwaddon 3 years ago
Evil Eye db1a372e5b Replace new with make_unique in opencs 3 years ago
Michał Plichta 5ee5e8f2f7
Correct CS typo described in #6704 3 years ago
elsid 98f53eca65
Fix gcc warning: -Wuninitialized
/home/elsid/dev/openmw/apps/opencs/model/world/data.cpp: In constructor ‘CSMWorld::Data::Data(ToUTF8::FromType, bool, const Files::PathContainer&, const std::vector<std::__cxx11::basic_string<char> >&, const boost::filesystem::path&)’:
/home/elsid/dev/openmw/apps/opencs/model/world/data.cpp:69:36: warning: member ‘CSMWorld::Data::mCells’ is used uninitialized [-Wuninitialized]
   69 | : mEncoder (encoding), mPathgrids (mCells), mRefs (mCells),
      |                                    ^~~~~~
3 years ago
cody glassman 04843fed6d moddable post-processing pipeline 3 years ago
Evil Eye a64979e25d Replace empty std::string assignments 3 years ago
Max Henzerling af5b1b3083 Add option to open record editting subviews in new windows instead of exclusive docking. 3 years ago
psi29a 84458baa8b Merge branch 'VA_OpenMW-CS' into 'master'
OpenMW-CS: Issue #3245 Add configurable instance grid, angle, and scale snapping

Closes #3245

See merge request OpenMW/openmw!1737
3 years ago
elsid db44f91fd5
Remove redundant include from esm3/esmreader.hpp 3 years ago
elsid 4509b05bc8
Use std::make_shared instead of new
make_shared allocates single storage for ref counter and the object.
std::shared_ptr<T>(new T) allocates 2 storages.
3 years ago
Vidi_Aquam 6d7c8f25fc Implement grid snapping and angle snapping in OpenMW-CS
Adds configurable snap settings for instance movement, rotation and scaling, used with the secondary edit button
3 years ago
Martin Otto 96e48e5492 Make settings loader differentiate between engine and editor (fixes #6658). 3 years ago
Petr Mikheev a453e5c198 Reuse the same code to load settings in apps/openmw, apps/launcher, apps/opencs 3 years ago
elsid 45db56b382
Rework fixed string
* Avoid inheritance.
* Define equality operators out of the class definition.
* Replace toString with toStringView where it doesn't make sense to create a string.
3 years ago
Bret Curtis 74e7cfc023 remove unused includes: part1
remove unused imports: part2

revert one tidy we will keep for c++20
3 years ago
Bret Curtis d1fb854521 move most of the files from esm to esm3, keep common code in esm; this is make space for a future with esm4
esm typo

esm typo
3 years ago
Cody Glassman 8ec0a52605 Toggable day night switch (#5928) 3 years ago
Evil Eye 52f9634624 Allow the CS to handle the repeat flag for all types 3 years ago
Evil Eye 6daefe3ddc Cast to the unsigned char expected by cctype functions 3 years ago
Evil Eye f23bd51175 Don't check bounds when the type is unambiguously a char 3 years ago
Evil Eye 751e8cf76b Do a bounds check before calling functions defined in cctype 3 years ago
Bo Svensson 6cf74f7041
refactors ESM::Land (#3213)
With this PR we reduce coupling, simplify code, encapsulate a variable and separate actual `ESM` data from its context.
3 years ago
Evil Eye 9b565c4cf9 Remove dead code 3 years ago
elsid 18d3102148
Do not use union to access FIXED_STRING<4> as int
https://en.cppreference.com/w/cpp/language/union:
> It's undefined behavior to read from the member of the union that wasn't most recently written.
3 years ago
Petr Mikheev a8acc19988 Avoid copying std::string in MWWorld::Ptr::getTypeDescription() 3 years ago
Evil Eye d680aa26e9 Disallow switch fallthrough 3 years ago
psi29a 782e0710af Merge branch 'OpenCS-preserve-blocked' into 'master'
OpenCS - Preserve "blocked" record flags when saving. #6288

Closes #6288

See merge request OpenMW/openmw!1052
3 years ago
Evil Eye 831055f878 Merge branch 'OpenCS-fix-modify' into 'master'
OpenCS - Re-implement the fix for Issue #6067.

See merge request OpenMW/openmw!1173
3 years ago
psi29a 18f5762a76 Merge branch 'master' into 'OpenCS-preserve-blocked'
# Conflicts:
#   CHANGELOG.md
3 years ago
Cédric Mocquillon d4e26746a3 Use recurse subdirectory iterator to iterate over the VFS without exposing internal details 3 years ago
elsid 6b7434ca69
Pass std::string_view instead of const std::string&
* Starting with Actor::getBodyPartMesh and ending with
  Misc::StringUtils::ciEqual.
* Add tests for Misc::StringUtils::ciEqual.
3 years ago
elsid a8c16071dc
Fix -Wreturn-local-addr warning
/home/elsid/dev/openmw/apps/opencs/model/world/actoradapter.cpp: In member function ‘const string& CSMWorld::ActorAdapter::ActorData::getPart(ESM::PartReferenceType) const’:
/home/elsid/dev/openmw/apps/opencs/model/world/actoradapter.cpp:142:20: error: returning reference to temporary [-Werror=return-local-addr]
  142 |             return "";
      |                    ^~
3 years ago
jvoisin d4e3575f1d Don't use `const` for objects returned by value.
This prevents the usage of std::move semantics,
and makes clang-tidy sad.
3 years ago
cc9cii 0a5571f19e Disable editing for blocked records in both table and dialogue edit widget. 3 years ago
cc9cii 2eb210f31a Partially undo commit 71be4cdd20 so that moved references retain the original refnum. This is consistent with vanilla CS's behaviour. 3 years ago
cc9cii b2bd97f283 A different implementation to MR 1051 to fix Issue #6067.
This MR doesn't delete the original record, but instead the original record is updated with the moved record when loading.

Issue #4752 is no longer addressed in this MR.
3 years ago
cc9cii 7264a10c07 Partially revert commit dab1a9e7fb 3 years ago
cc9cii 7227a83e60 Preserve "blocked" record flags when saving with OpenCS. This will help outputs of OpenCS to be used with vanilla Morrowind.
Sample use case: users are using the Morrowind Code Patch feature that allows modders to enable this flag to differentiate editor-made potions from player crafted potions for tooltips.
3 years ago
psi29a 66f028c4a1 Merge branch 'correctcommandimplementation' into 'master'
Don't do storage in constructors of the commands

See merge request OpenMW/openmw!1126
3 years ago
psi29a fff35dcb03 Merge branch 'Ignore-empty-pgrd' into 'master'
Do not store empty PGRD records.  Should resolve Issue #6209.

See merge request OpenMW/openmw!1121
3 years ago
unelsson de3497d291 Fix undo-redo crash 3 years ago
unelsson 890ce1eefb Reverse action order for redo and undo 3 years ago
unelsson 0cfabd6f3b Move mapToSource back to constructor 3 years ago
unelsson b2fe591590 Don't do any storing in the constructor 3 years ago
unelsson 45549da0f5 For most commands, set mOld in redo, not in constructor 3 years ago
unelsson 7801f42005 Don't do mapToSource at executeModify 3 years ago
cc9cii bd3ef506cd Empty Pathgrid record is considered as the modder's intention to delete any existing record. 3 years ago
unelsson 298db2ef76 Initialize and check pointer. 3 years ago
unelsson f1d05a93bf Get index and model from proxy 3 years ago
psi29a b770373491 Merge branch 'OpenCS-enforce-str-length' into 'master'
OpenCS - Disallow entry of strings longer than the lengths allowed by the file format (#3066)

See merge request OpenMW/openmw!1088
3 years ago
glassmancody.info 09e03fde2e refactor and fix wobbly shores 3 years ago
cc9cii 8aee84c46e Disallow entry of strings longer than the lengths allowed by the file format.
It is possible to allow longer strings but that will require an extension in the omwaddon format as well as changes to the reader to handle that extension.  Such changes should be a separate MR.

(applied the patch in https://gitlab.com/OpenMW/openmw/-/issues/3066)
3 years ago
psi29a 9fa7521fc5 Merge branch 'OpenCS-no-charconv' into 'master'
OpenCS - Avoid the inclusion of charconv header

See merge request OpenMW/openmw!1087
3 years ago
psi29a 9b7e14ec00 Merge branch 'OpenCS-moved-reference' into 'master'
OpenCS - Fix moved reference - Issues #3514 and #4752

See merge request OpenMW/openmw!1051

(cherry picked from commit 2bee171c7990522da33c2667f7d079fa35f4ede0)

36c30f7f Fix for Issue #3514 where moving a reference to another cell is not handled properly.
40327681 Update the changelog.
3 years ago
cc9cii bf06898a79 Retain the use of std::string_view in the function signature. 3 years ago
cc9cii 99e691fbe3 Avoid the inclusion of <charconv> header due to Ubuntu Bionic (18.04) which as gcc version less than 8.1
Partially reverts commit fd67ebde25
3 years ago
psi29a 4b48e62b64 Merge branch 'fixandclean' into 'master'
Fix opencs build and remove some clang warnings

See merge request OpenMW/openmw!1078
3 years ago
fredzio 1391194152 Remove unneeded return statement 3 years ago
fredzio 9ba459662d Remove unneeded std::move
[19/199] Building CXX object apps/opencs/CMakeFiles/openmw-cs.dir/model/world/commands.cpp.o
../../../apps/opencs/model/world/commands.cpp:298:12: warning: moving a temporary object prevents copy elision [-Wpessimizing-move]
    mOld = std::move(model.getRecord (id).clone());
           ^
../../../apps/opencs/model/world/commands.cpp:298:12: note: remove std::move call here
    mOld = std::move(model.getRecord (id).clone());
           ^~~~~~~~~~                            ~
../../../apps/opencs/model/world/commands.cpp:333:12: warning: moving a temporary object prevents copy elision [-Wpessimizing-move]
    mOld = std::move(model.getRecord (id).clone());
           ^
../../../apps/opencs/model/world/commands.cpp:333:12: note: remove std::move call here
    mOld = std::move(model.getRecord (id).clone());
           ^~~~~~~~~~                            ~
2 warnings generated.
3 years ago
fredzio 36e33b0cf2 Add missing override 3 years ago
fredzio bede1ea1ec Fix build 3 years ago
psi29a 15d278de55 Merge branch 'opt-out-compose' into 'master'
Make it possible to opt out of composing variables

Closes #6186

See merge request OpenMW/openmw!1076
3 years ago
cc9cii 67cad2c515 Fix `CSMWorld::InfoCollection::getTopicRange()` returning one too many. 3 years ago
AnyOldName3 4727ae4b3b Make it possible to opt out of composing variables 3 years ago
psi29a 141095b850 Merge branch 'OpenCS-loading-opt' into 'master'
OpenCS loading time improvements

See merge request OpenMW/openmw!1044
3 years ago
cc9cii 33dcd7585a OpenCS - Jump To Modified 3 years ago
cc9cii 3e466699c8 A better way to plug a potential memory leak in the event of an exception during push_back(). 3 years ago
cc9cii fd67ebde25 Changes based on review comments, including:
* replace murmurhash with std::unordered_map
* plug potential leak from unique_ptr release
* replacing some sections with cleaner code
4 years ago
cc9cii 725d689e8a Call push_back() if inserting to the end of the vector. It seems MSVC may be generating different code compared to insert().
(copied the changes from commit SHA-1: 257126ed69)
4 years ago
cc9cii 44a333b6db Don't attempt to open files yet to be created. 4 years ago
cc9cii 5c504e4d22 Convert the CellRef record index lookup maps to use integer keys rather than strings.
- Morrowind load over 300,000 references, so even small inefficiencies add up to longer loading times.
- std::map is used, but should try others, std::unordered_map or even std::vector

(copied the changes from commit SHA-1: 86945d1912)
4 years ago
cc9cii 10c6304a1f Fix typo from commit cfdbd0d471. 4 years ago
cc9cii fc2f68a465 Change the loader's top progress bar to show total number of records processed rather than the number of files.
(copied the changes from commit SHA-1: ff072441fd)
4 years ago
cc9cii 5fffcab94f Performance improvements for loading Info records.
- The order of info records with the same topic are maintained in Collection::mRecords
- The index lookup data structure are not ordered.  The topic string is hashed.  The infos for the topic are simply placed in a vector.
- The index values for appending or inserting a record takes prev/next values (if exist)
- FIXME: prev/next values are not adjusted for adding or removing records
- FIXME: undo after reordering does not reset the modified flag

(copied the changes from commit SHA-1: 06f9922822)
4 years ago
cc9cii 66bda84240 Convert RefNum index map to use find().
(copied the changes from commits 68e16b6cee and 0de223c637)

NOTE: it is unclear how this change affects commit 61a4a0807b
4 years ago
cc9cii be45092e55 Use std::unique_ptr to store records in collections, RefidCollection and RefIdData.
(copied the changes from commit 23e7e3c165)
4 years ago
elsid cfdbd0d471
Indicate moved cell refs explicitly
This is less error prone approach than use of MovedCellRef fields.

Also make separate functions for skipping and reading moved cell refs to avoid
passing special flags  logic and null pointers for unused arguments.
4 years ago
cc9cii ae4ddd810f More dead code removal. 4 years ago
cc9cii ec457a09c3 Fix Npc edit widget index out of bounds due to a removed column. 4 years ago
cc9cii f68c81e631 Merge branch 'master' into 'OpenCS_Bug6017' 4 years ago
cc9cii 4b3de46bfa Use enums in place of magic numbers. Ensure Creature and NPC cell references are always saved as persistent. 4 years ago
elsid 7498a86abe
Remove redundant semicolons 4 years ago
cc9cii 42bcbe34de Cell references that teleport (Doors) should be placed in the "persistent" group when saving. 4 years ago
cc9cii 2d8dd9be32 Fix using incorrect id to search for record flags. Eliminate inefficient double-loop in saving cell references. 4 years ago
cc9cii 47ef98ca1b Clean up RefIdData code for better legibility. 4 years ago
cc9cii f2a301653c Remove redundant mPersistent member from ESM::NPC and ESM::Creature, replaced by mRecordFlags. Fixed the editing of the persistence flag value. 4 years ago
cc9cii 2a76634f5f Moved persistence flag from references to the header flags of referenceables (e.g. Static, Weapon, etc). Editing widget is not fully working. 4 years ago
cc9cii f6eab52a1b Added "Persistent" column to references table. 4 years ago
cc9cii 024ad3276b Partial fix for #6017. The persistence flag of the references are saved but it is not yet possible to modify it via OpenCS. 4 years ago
AnyOldName3 d38126ef1c Pack default CS config
*Technically* it was already being loaded as if it were packed, but it
made no difference because it's supposed to be empty.
4 years ago
Thunderforge 945f1aad20 Using override keyword in OpenMW CS
Detected by clang-tidy's modernize-use-override
4 years ago
elsid f2188d2533
Reduce temporary allocations on ESM loading
By moving objects instead of copying when possible.
4 years ago
Bret Curtis 66a527c3de
Merge pull request #3075 from akortunov/warnfix
Fix MSVC's C4244 and C4267 warnings
4 years ago
psi29a 3944648f0b Merge branch 'opencs_remove_inclde' into 'master'
Remove some superfluous includes in the opencs

See merge request OpenMW/openmw!829
4 years ago
jvoisin 06ae26037f Remove some superfluous includes in the opencs 4 years ago
Andrei Kortunov f9d42ed396 Fix MSVC's C4267 warnings 4 years ago
Thunderforge 339d347aea Fixing performance-faster-string-find issues
This addresses the Clang Tidy check [performance-faster-string-find](https://clang.llvm.org/extra/clang-tidy/checks/performance-faster-string-find.html).
4 years ago
Bret Curtis befa3f587f
Merge pull request #3068 from akortunov/master
Clean up MSVC warnings
4 years ago
psi29a 3423d3f882 Merge branch 'various_warn' into 'master'
Fix various warnings found by clang

See merge request OpenMW/openmw!758
4 years ago
jvoisin 38316cdaf8 Fix various warnings found by clang
- unused alias
- inefficient use of push_back
- exceptions not inheriting from std::exception
- weird use of a comma
- value compared against itself
4 years ago
Andrei Kortunov f308dde254 Clean up MSVC warnings 4 years ago
unelsson 06fda4c5a1 QLineEdit for setting base animation files 4 years ago
unelsson 95272e0f14 String setting to CSMPrefs, part of dehardcoding animation files 4 years ago
Andrei Kortunov 016a1d45df Remove outdated field - remnant from earlier implementation 4 years ago
glassmancody.info 582f7b52cf Merge remote-tracking branch 'upstream/master' into why_are_the_christmas_lights_still_up 4 years ago
glassmancody.info 4ba473b684 Finalize settings, torch fix 4 years ago
glassmancody.info 690995988b More formatting, OpenCS cells are unbroken 4 years ago
glassmancody.info 7370acdf54 Merge remote-tracking branch 'upstream/master' into why_are_the_christmas_lights_still_up 4 years ago
glassmancody.info 9d9074c244 Add shared UBO 4 years ago
Andrei Kortunov 124a33d8a3 Fix uninitialized variables 4 years ago
Petr Mikheev 7bbbe40abe "static const" -> "static constexpr" in headers 4 years ago
Nelsson Huotari 9f0f3eaeb2 Add collada to supported formats 4 years ago
psi29a acfd2cfd90 Merge branch 'dialogclonefix' into 'master'
[OpenMW-CS] Fix cloning in info records

See merge request OpenMW/openmw!524
4 years ago
Nelsson Huotari 7196ad7455 Implement an override-value when cloning, use when cloning info records 4 years ago
Bret Curtis a735bbe9a5
Merge pull request #3040 from akortunov/pvs
Fix some issues, found by PVS Studio
4 years ago
Nelsson Huotari 3045d20a97 Make sure that vector isn't empty, just in case 4 years ago
Nelsson Huotari 5f1d3e0e2f Use the Topic ID of the cloned target from topicinfos 4 years ago
Nelsson Huotari 313e895912 [OpenMW-CS] Cube and sphere instance selection 4 years ago
Andrei Kortunov 1930f8f37d Fix copy-paste error 4 years ago
Andrei Kortunov 7fc4c9f3f6 Avoid dead code 4 years ago
Andrei Kortunov 801e2d6ad0 Avoid to use uninitialized variables 4 years ago
Alexei Dobrohotov 32601e0ae4 Properly reserve body parts for skirts (bug #5731) 4 years ago
Coleman Smith 842ea9d6ed simplifying a bit
- attaching gradient camera directly to the main camera
- using Vec4ub
4 years ago
Nelsson Huotari 61a4a0807b Load master index in refId to mContentFile, keep master index also in mIndex 4 years ago
Andrei Kortunov 8084a336b5 Replace zeroes and nulls by nullptrs 4 years ago
Alexei Dobrohotov 53f91a3aa5
Merge pull request #3018 from akortunov/emplace
Use emplace_back instead of push_back
4 years ago
Nelsson Huotari b1ea9f6a5b Strip the plugin index from refid completely 4 years ago
Nelsson Huotari fb4250a2b7 Strip the plugin index when looking for deleted refs. 4 years ago
Andrei Kortunov 065ed5138e Use emplace_back instead of push_back 4 years ago
Andrei Kortunov 8ca3c3b123 Mark overrided methods by override keyword 4 years ago
psi29a 8f86617262 Merge branch 'master' into 'master'
Fixed passed indexes for object deletion #5384

See merge request OpenMW/openmw!196
5 years ago
Andrei Kortunov d0fe15b095 Use meaningful names instead of mSkill1 and mSkill2 5 years ago
Andrei Kortunov 0bb9322a69 Use default constructor for ItemFlags 5 years ago
Andrei Kortunov 2b4274bca8 Use modern Qt flag declarations 5 years ago
Bret Curtis 61a5c6125d #5480: Drop Qt4 support and require Qt 5.12 or later. 5 years ago
Capostrophic 039c9a37eb Verifier: Don't check race of non-skin body parts (bug #5400)
Remove unnecessary flag field check
Remove magic numbers
5 years ago
Giovanni Bodega 8a8b4986da Fixed passed indexes for object deletion #5384 5 years ago
Bret Curtis 4ae0bd1fae Merge branch 'helplink' into 'master'
Link to readthedocs documentation from OpenCS

See merge request OpenMW/openmw!171
5 years ago
Frederic Chardon 513ac8986d Add link to opencs documentation on readthedocs, available through
context menu.
The documentation opens in default browser.

There are 3 contexts:
- global: opens the OpenMW CS User Manual main page
- when a record is selected: opens the "Tables" page
- when the filter field is selected: opens the "Record Filters" page

There is also a link to the OpenCS tutorial in the help menu.
5 years ago
Capostrophic ad333e88fe Handle enchantment autocalc flag as a flag (bug #5363) 5 years ago
Andrei Kortunov 9712925ba3
Merge pull request #2762 from akortunov/warnfix
Avoid a hack to initialize mIndex in the editor
5 years ago
Andrei Kortunov c7cedc4e5a Avoid a hack to initialize mIndex 5 years ago
Bret Curtis 7fda65e7bb
Merge pull request #2692 from unelsson/opencsbrushdraw
Editor: Implement brush outlines
5 years ago
elsid ef4a7089e4
Use template specialization for writeHNT to write raw arrays
To avoid passing explicit size argument where it's possible.
5 years ago
Nelsson Huotari da0add904b Fix and simplify brush outlines and coordinate calculations 5 years ago
Alexei Dobrohotov baff15362a
Merge pull request #2713 from unelsson/opencsdropobjects
Editor: Implement dropping objects with keypress in instancemode
5 years ago
Capostrophic 18bfc6f2c5 Fix Gender column filtering (bug #4601) and correct filter descs 5 years ago
Nelsson Huotari 711dc59f09 Implement four different functions for dropping 5 years ago
Nelsson Huotari f063eeb36e Drop objects with a keyboard shortcut 5 years ago
Andrei Kortunov 02444add2a Support for radial fog (feature #4708) 5 years ago
Capostrophic 4455c978df Explain the global shader define default values in editor 5 years ago
Capostrophic 6999f1fd28 Add an option to apply lighting to environment maps 5 years ago