Changesets: DarkRadiant
declmanager d4323b5b 07.07.2022 03:32 Details Diff |
0005977: Fix build |
Affected Issues 0005977 |
|
mod - plugins/dm.editing/AIHeadChooserDialog.cpp | Diff File | ||
master cfca3659 06.07.2022 19:27 Details Diff |
0000401: test calling a command with args as a statement string |
Affected Issues 0000410 |
|
mod - test/CommandSystem.cpp | Diff File | ||
declmanager b5b3bbc6 06.07.2022 16:52 Details Diff |
0005977: Decl typenames are treated case-insensitively now |
Affected Issues 0005977 |
|
mod - radiantcore/decl/DeclarationFolderParser.cpp | Diff File | ||
mod - radiantcore/decl/DeclarationFolderParser.h | Diff File | ||
mod - radiantcore/decl/DeclarationManager.cpp | Diff File | ||
mod - radiantcore/decl/DeclarationManager.h | Diff File | ||
declmanager 7ae1bbc1 06.07.2022 15:08 Details Diff |
0005977: Add unit test checking that the typename is compared case-insensitively (fails). Attempt to fix Linux build failure due to "None" being defined in some X11 header |
Affected Issues 0005977 |
|
mod - include/ideclmanager.h | Diff File | ||
mod - include/idecltypes.h | Diff File | ||
mod - test/DeclManager.cpp | Diff File | ||
mod - test/resources/tdm/testdecls/numbers.decl | Diff File | ||
master 2c2dfdb8 05.07.2022 20:22 Details Diff |
0000401: test calling a command with an argument list |
Affected Issues 0000410 |
|
mod - test/CommandSystem.cpp | Diff File | ||
master a2b332e7 05.07.2022 19:45 Details Diff |
0000401: expand command-with-args unit test Test that we can receive both a string and an integer argument. Get rid of the local struct since it's not adding any value. Also confirm that the command is not called if the wrong argument types are provided. |
Affected Issues 0000410 |
|
mod - test/CommandSystem.cpp | Diff File | ||
master e54c61d7 05.07.2022 19:12 Details Diff |
0000401: test calling a Command with an int argument |
Affected Issues 0000410 |
|
mod - test/CommandSystem.cpp | Diff File | ||
declmanager 3de422ef 04.07.2022 16:52 Details Diff |
0005977: Unhook the existing eclass parse infrastructure, redirect lookups and walkers to the GlobalDeclarationManager |
Affected Issues 0005977 |
|
mod - radiantcore/decl/DeclarationManager.cpp | Diff File | ||
mod - radiantcore/eclass/EClassManager.cpp | Diff File | ||
mod - radiantcore/eclass/EClassManager.h | Diff File | ||
mod - radiantcore/eclass/EClassParser.cpp | Diff File | ||
mod - radiantcore/eclass/EntityClass.cpp | Diff File | ||
mod - radiantcore/eclass/EntityClass.h | Diff File | ||
declmanager b0a33a09 04.07.2022 16:06 Details Diff |
0005977: Add parse guards to all the locations where the def contents need to have been processed. |
Affected Issues 0005977 |
|
mod - radiantcore/eclass/EntityClass.cpp | Diff File | ||
mod - radiantcore/eclass/EntityClass.h | Diff File | ||
declmanager 26fcfa73 03.07.2022 16:50 Details Diff |
0005977: Start changing the EntityClass methods to lazy-parse itself from the syntax block when any of the public methods are invoked. This requires the const-ness to be dropped from most methods - the alternative would be to keep the const-ness but ensure that the instance is parsed before any of the public methods can be safely invoked. Which is something we cannot promise at this point. |
Affected Issues 0005977 |
|
mod - include/ieclass.h | Diff File | ||
mod - libs/eclass.h | Diff File | ||
mod - libs/wxutil/EntityClassChooser.cpp | Diff File | ||
mod - plugins/dm.conversation/ConversationCommandInfo.cpp | Diff File | ||
mod - plugins/dm.difficulty/DifficultySettings.cpp | Diff File | ||
mod - plugins/dm.editing/AIVocalSetPreview.cpp | Diff File | ||
mod - radiant/ui/einspector/EntityInspector.cpp | Diff File | ||
mod - radiantcore/eclass/EntityClass.cpp | Diff File | ||
mod - radiantcore/eclass/EntityClass.h | Diff File | ||
mod - radiantcore/entity/EntityModule.cpp | Diff File | ||
mod - radiantcore/map/aas/AasFileManager.cpp | Diff File | ||
mod - test/EntityClass.cpp | Diff File | ||
declmanager 3d03b3f5 03.07.2022 15:30 Details Diff |
0005977: Remove the getModelpath/setModelPath and getSkin/setSkin methods from the EntityClass type, no code is using these values after they've been set. Instead the _isFixedSize flag is set based on the occurrence of a "model" attribute on the class or any of its ancestors. This is needed to give the correct hints to the algorithm in getClassType(). |
Affected Issues 0005977 |
|
mod - radiantcore/eclass/EClassParser.cpp | Diff File | ||
mod - radiantcore/eclass/EntityClass.cpp | Diff File | ||
mod - radiantcore/eclass/EntityClass.h | Diff File | ||
declmanager 654566a3 03.07.2022 14:38 Details Diff |
0005977: Create the entity instances based on the type returned by IEntityClass::getClassType() |
Affected Issues 0005977 |
|
mod - radiantcore/entity/EntityModule.cpp | Diff File | ||
declmanager 903dc836 03.07.2022 14:32 Details Diff |
0005977: Introduce IEntityClass::Type enumeration which should serve as new basis for determining which C++ types should be created for a certain entity class. The logic has been taken from existing code in EntityModule, which is going to be migrated in the next step. Added unit tests covering the distinction criteria, including scenarios where the relevant attributes are inherited from a parent. |
Affected Issues 0005977 |
|
mod - include/ieclass.h | Diff File | ||
mod - radiantcore/eclass/EntityClass.cpp | Diff File | ||
mod - radiantcore/eclass/EntityClass.h | Diff File | ||
mod - test/EntityClass.cpp | Diff File | ||
mod - test/resources/tdm/def/base.def | Diff File | ||
mod - test/resources/tdm/def/bucket.def | Diff File | ||
mod - test/resources/tdm/def/player.def | Diff File | ||
declmanager 824123c6 03.07.2022 12:45 Details Diff |
0005977: Add unit test checking that loading a map with an entity referencing a missing entityDef doesn't discard its child primitives, even after saving |
Affected Issues 0005977 |
|
mod - test/EntityClass.cpp | Diff File | ||
add - test/algorithm/FileUtils.h | Diff File | ||
mod - test/algorithm/Scene.h | Diff File | ||
add - test/resources/tdm/maps/missing_entitydef.map | Diff File | ||
mod - tools/msvc/Tests/Tests.vcxproj | Diff File | ||
mod - tools/msvc/Tests/Tests.vcxproj.filters | Diff File | ||
declmanager 8acdb354 03.07.2022 12:25 Details Diff |
0005977: Move eclass-related tests to separate test fixture, the Entity test was getting a bit crowded |
Affected Issues 0005977 |
|
mod - test/CMakeLists.txt | Diff File | ||
mod - test/Entity.cpp | Diff File | ||
add - test/EntityClass.cpp | Diff File | ||
mod - tools/msvc/Tests/Tests.vcxproj | Diff File | ||
mod - tools/msvc/Tests/Tests.vcxproj.filters | Diff File | ||
declmanager bb462bd5 03.07.2022 06:46 Details Diff |
0005977: Setting the model path on the entity class will alter the isFixedSize flag, so reactivate the code in the EClassParser for the moment being. |
Affected Issues 0005977 |
|
mod - include/ieclass.h | Diff File | ||
mod - radiantcore/eclass/EClassParser.cpp | Diff File | ||
mod - radiantcore/eclass/EntityClass.h | Diff File | ||
declmanager cee506b9 03.07.2022 06:42 Details Diff |
0005977: Remove the isFixedSize parameter altogether, it's now false by default in the only constructor that's left. |
Affected Issues 0005977 |
|
mod - radiantcore/eclass/EClassParser.cpp | Diff File | ||
mod - radiantcore/eclass/EntityClass.cpp | Diff File | ||
mod - radiantcore/eclass/EntityClass.h | Diff File | ||
declmanager 3fa9acb0 03.07.2022 06:39 Details Diff |
0005977: All client code is passing false to the isFixedSize argument, remove the argument and hardcode the argument in EntityClass:CreateDefault. |
Affected Issues 0005977 |
|
mod - radiantcore/eclass/DefCreators.h | Diff File | ||
mod - radiantcore/eclass/EClassManager.cpp | Diff File | ||
mod - radiantcore/eclass/EntityClass.cpp | Diff File | ||
mod - radiantcore/eclass/EntityClass.h | Diff File | ||
declmanager fdc6ccdb 03.07.2022 06:32 Details Diff |
0005977: Merge the two EntityClass constructors into one, since it's only used internally. Invert the bool logic of the named CreateDefault constructor to be the same as the one used in the regular constructor. The isFixedSize parameter is now mandatory on the EntityClass constructor. |
Affected Issues 0005977 |
|
mod - radiantcore/eclass/DefCreators.h | Diff File | ||
mod - radiantcore/eclass/EClassManager.cpp | Diff File | ||
mod - radiantcore/eclass/EClassParser.cpp | Diff File | ||
mod - radiantcore/eclass/EntityClass.cpp | Diff File | ||
mod - radiantcore/eclass/EntityClass.h | Diff File | ||
declmanager 697f588b 03.07.2022 05:45 Details Diff |
0005977: It seems the IEntityClass::getModelPath and getSkin methods were updated but never used by anything else => deactivating that code for now. Since the engine code deals with skins defined on modelDefs, let's open a separate bugtracker entry to support skinned model defs. |
Affected Issues 0005977 |
|
mod - include/ieclass.h | Diff File | ||
mod - radiantcore/eclass/EClassParser.cpp | Diff File | ||
mod - radiantcore/eclass/EntityClass.cpp | Diff File | ||
mod - radiantcore/eclass/EntityClass.h | Diff File | ||
declmanager fbfa5e99 02.07.2022 15:19 Details Diff |
0005977: Add IDeclarationManager::findOrCreateDeclaration to interface |
Affected Issues 0005977 |
|
mod - include/ideclmanager.h | Diff File | ||
mod - radiantcore/decl/DeclarationManager.cpp | Diff File | ||
mod - radiantcore/decl/DeclarationManager.h | Diff File | ||
mod - test/DeclManager.cpp | Diff File | ||
declmanager b1d2e0e5 02.07.2022 12:32 Details Diff |
0005977: Extend unit tests to cover more eclass colour override behaviour |
Affected Issues 0005977 |
|
mod - test/Entity.cpp | Diff File | ||
declmanager f30807cc 02.07.2022 10:15 Details Diff |
0005977: DeclarationManager treats decl names case-insensitively during lookup |
Affected Issues 0005977 |
|
mod - include/ideclmanager.h | Diff File | ||
mod - radiantcore/decl/DeclarationManager.h | Diff File | ||
declmanager 3250f2b0 02.07.2022 08:25 Details Diff |
0005977: Cleanup. Add more unit tests to prove that declaration lookup is case-insensitive. They are failing of course. |
Affected Issues 0005977 |
|
mod - radiantcore/eclass/EClassParser.cpp | Diff File | ||
mod - test/DeclManager.cpp | Diff File | ||
mod - test/Entity.cpp | Diff File | ||
declmanager a8c9a7c8 02.07.2022 08:05 Details Diff |
0005977: ModelDefs are now lazily parsing their contents, inheritance resolution is done on the fly. |
Affected Issues 0005977 |
|
mod - radiantcore/eclass/Doom3ModelDef.h | Diff File |