Changesets: DarkRadiant

master 2e90d32c

01.04.2024 16:33

jonri


Details Diff
Update version number in CMakeLists and metainfo
mod - CMakeLists.txt Diff File
mod - install/net.darkradiant.DarkRadiant.metainfo.xml Diff File

master 609d7b1d

31.03.2024 16:08

es20490446e


Details Diff
Compatibility with libgit2 1.8+
mod - plugins/vcs/Commit.h Diff File
mod - plugins/vcs/Repository.cpp Diff File

master b1e08664

31.03.2024 07:21

greebo


Details Diff
Update manual HTML
mod - doc/manual.html Diff File

master f84caabf

31.03.2024 06:42

greebo


Details Diff
Update version to 3.9.0
mod - include/version.h Diff File

master d4f42168

31.03.2024 06:40

greebo


Details Diff
0006502: Adjust post build event after libxml2 removal Affected Issues
0006502
mod - tools/msvc/post_build_event_x64.cmd Diff File

master b1be82d9

31.03.2024 05:14

greebo

Committer: GitHub


Details Diff
0006203: Merge pull request 0000037 from jonri/wayland_mouse_fix

Improve mouse cursor hiding consistency when the pointer is captured.
Affected Issues
0000037, 0006203
mod - libs/wxutil/FreezePointer.cpp Diff File
mod - radiant/RadiantApp.cpp Diff File
mod - radiant/xyview/OrthoView.cpp Diff File

master cbda4838

22.03.2024 16:23

jonri


Details Diff
Force GDK backend to X11 on Linux
mod - radiant/RadiantApp.cpp Diff File

master ee57da96

22.03.2024 12:43

jonri


Details Diff
Improve mouse cursor hiding consistency when the pointer is captured.
This fixes issues under Wayland when dragging the 2D and 3D views.
mod - libs/wxutil/FreezePointer.cpp Diff File
mod - radiant/xyview/OrthoView.cpp Diff File

master 40da36f7

20.03.2024 20:27

orbweaver


Details Diff
Merge EntityNode and IEntityNode

Pure virtual IEntityNode interface removed; instead all downstream code
uses EntityNode directly which has been made available in the scene
library.

This required moving a fairly large number of dependency classes from
radiantcore/entity into libs/scene.
mod - include/ientity.h Diff File
mod - include/imapformat.h Diff File
mod - libs/entitylib.h Diff File
mod - libs/maplib.h Diff File
mod - libs/scene/CMakeLists.txt Diff File
mod - libs/scene/ChildPrimitives.cpp Diff File
mv - radiantcore/entity/ColourKey.h → libs/scene/ColourKey.h Diff File
mod - libs/scene/EntityBreakdown.h Diff File
mv - radiantcore/entity/EntityNode.cpp → libs/scene/EntityNode.cpp Diff File
mv - radiantcore/entity/EntityNode.h → libs/scene/EntityNode.h Diff File
mv - radiantcore/entity/EntitySettings.cpp → libs/scene/EntitySettings.cpp Diff File
mv - radiantcore/entity/EntitySettings.h → libs/scene/EntitySettings.h Diff File
mv - radiantcore/entity/KeyObserverDelegate.h → libs/scene/KeyObserverDelegate.h Diff File
mv - radiantcore/entity/KeyObserverMap.h → libs/scene/KeyObserverMap.h Diff File
mv - radiantcore/entity/KeyValueObserver.cpp → libs/scene/KeyValueObserver.cpp Diff File
mv - radiantcore/entity/KeyValueObserver.h → libs/scene/KeyValueObserver.h Diff File
mod - libs/scene/ModelFinder.cpp Diff File
mv - radiantcore/entity/ModelKey.cpp → libs/scene/ModelKey.cpp Diff File
mv - radiantcore/entity/ModelKey.h → libs/scene/ModelKey.h Diff File
mv - radiantcore/entity/NameKey.h → libs/scene/NameKey.h Diff File
mv - radiantcore/entity/NameKeyObserver.cpp → libs/scene/NameKeyObserver.cpp Diff File
mv - radiantcore/entity/NameKeyObserver.h → libs/scene/NameKeyObserver.h Diff File
mv - radiantcore/entity/NamespaceManager.cpp → libs/scene/NamespaceManager.cpp Diff File
mv - radiantcore/entity/NamespaceManager.h → libs/scene/NamespaceManager.h Diff File
mv - radiantcore/entity/OriginKey.h → libs/scene/OriginKey.h Diff File
mv - radiantcore/entity/RenderableEntityName.cpp → libs/scene/RenderableEntityName.cpp Diff File
mv - radiantcore/entity/RenderableEntityName.h → libs/scene/RenderableEntityName.h Diff File
mv - radiantcore/entity/RenderableObjectCollection.h → libs/scene/RenderableObjectCollection.h Diff File
add - libs/scene/RenderableTargetLines.cpp Diff File
mv - radiantcore/entity/target/RenderableTargetLines.h → libs/scene/RenderableTargetLines.h Diff File
mv - radiantcore/entity/ShaderParms.cpp → libs/scene/ShaderParms.cpp Diff File
mv - radiantcore/entity/ShaderParms.h → libs/scene/ShaderParms.h Diff File
mv - radiantcore/entity/target/Target.h → libs/scene/Target.h Diff File
mv - radiantcore/entity/target/TargetKey.cpp → libs/scene/TargetKey.cpp Diff File
mv - radiantcore/entity/target/TargetKey.h → libs/scene/TargetKey.h Diff File
mv - radiantcore/entity/target/TargetKeyCollection.cpp → libs/scene/TargetKeyCollection.cpp Diff File
mv - radiantcore/entity/target/TargetKeyCollection.h → libs/scene/TargetKeyCollection.h Diff File
mv - radiantcore/entity/target/TargetLineNode.cpp → libs/scene/TargetLineNode.cpp Diff File
mv - radiantcore/entity/target/TargetLineNode.h → libs/scene/TargetLineNode.h Diff File
mv - radiantcore/entity/target/TargetManager.cpp → libs/scene/TargetManager.cpp Diff File
mv - radiantcore/entity/target/TargetManager.h → libs/scene/TargetManager.h Diff File
mv - radiantcore/entity/target/TargetableNode.cpp → libs/scene/TargetableNode.cpp Diff File
mv - radiantcore/entity/target/TargetableNode.h → libs/scene/TargetableNode.h Diff File
mod - libs/scene/merge/GraphComparer.cpp Diff File
mod - libs/scene/merge/MergeAction.h Diff File
add - libs/scene/scene_fwd.h Diff File
mod - libs/selection/EntitiesFirstSelector.h Diff File
mod - libs/selection/EntitySelection.h Diff File
mod - libs/selectionlib.h Diff File
mod - libs/wxutil/preview/EntityPreview.cpp Diff File
mod - libs/wxutil/preview/EntityPreview.h Diff File
mod - plugins/dm.conversation/ActorNodeFinder.h Diff File
mod - plugins/dm.conversation/ConversationDialog.cpp Diff File
mod - plugins/dm.conversation/ConversationEntity.cpp Diff File
mod - plugins/dm.difficulty/DifficultySettingsManager.cpp Diff File
mod - plugins/dm.editing/AIEditingPanel.cpp Diff File
mod - plugins/dm.editing/AIHeadPropertyEditor.cpp Diff File
mod - plugins/dm.editing/AIVocalSetPropertyEditor.cpp Diff File
mod - plugins/dm.gameconnection/DiffDoom3MapWriter.cpp Diff File
mod - plugins/dm.gameconnection/DiffDoom3MapWriter.h Diff File
mod - plugins/dm.gameconnection/GameConnection.cpp Diff File
mod - plugins/dm.gameconnection/MapObserver.cpp Diff File
mod - plugins/dm.gameconnection/MapObserver.h Diff File
mod - plugins/dm.gui/ReadableEditorDialog.cpp Diff File
mod - plugins/dm.objectives/ObjectiveEntity.cpp Diff File
mod - plugins/dm.objectives/ObjectiveEntityFinder.cpp Diff File
mod - plugins/dm.objectives/ObjectivesEditor.cpp Diff File
mod - plugins/dm.objectives/ce/specpanel/EntityNameSpecifierPanel.cpp Diff File
mod - plugins/dm.stimresponse/StimResponseEditor.cpp Diff File
mod - plugins/script/interfaces/EntityInterface.cpp Diff File
mod - radiant/ui/animationpreview/AnimationPreview.cpp Diff File
mod - radiant/ui/animationpreview/AnimationPreview.h Diff File
mod - radiant/ui/common/EntityChooser.cpp Diff File
mod - radiant/ui/eclasstree/EClassTree.cpp Diff File
mod - radiant/ui/einspector/EntityInspector.cpp Diff File
mod - radiant/ui/einspector/ModelPropertyEditor.cpp Diff File
mod - radiant/ui/einspector/PropertyEditor.cpp Diff File
mod - radiant/ui/lightinspector/LightInspector.cpp Diff File
mod - radiant/ui/modelexport/ExportAsModelDialog.cpp Diff File
mod - radiant/ui/ortho/OrthoContextMenu.cpp Diff File
mod - radiantcore/CMakeLists.txt Diff File
mod - radiantcore/entity/EntityModule.cpp Diff File
mod - radiantcore/entity/EntityModule.h Diff File
mod - radiantcore/entity/RenderableArrow.cpp Diff File
mod - radiantcore/entity/RenderableArrow.h Diff File
mod - radiantcore/entity/RenderableEntityBox.cpp Diff File
mod - radiantcore/entity/RenderableEntityBox.h Diff File
mod - radiantcore/entity/VertexInstance.h Diff File
mod - radiantcore/entity/curve/Curve.cpp Diff File
mod - radiantcore/entity/curve/Curve.h Diff File
mod - radiantcore/entity/curve/CurveCatmullRom.cpp Diff File
mod - radiantcore/entity/curve/CurveCatmullRom.h Diff File
mod - radiantcore/entity/curve/CurveNURBS.cpp Diff File
mod - radiantcore/entity/curve/CurveNURBS.h Diff File
mod - radiantcore/entity/curve/RenderableCurve.h Diff File
mod - radiantcore/entity/doom3group/RenderableVertex.h Diff File
mod - radiantcore/entity/doom3group/StaticGeometryNode.h Diff File
mod - radiantcore/entity/eclassmodel/EclassModelNode.h Diff File
mod - radiantcore/entity/generic/GenericEntityNode.cpp Diff File
mod - radiantcore/entity/generic/GenericEntityNode.h Diff File

master 36ebf11d

19.03.2024 20:26

orbweaver


Details Diff
Devirtualise Entity class

Entity is now defined in scene/Entity.h, and includes the concrete
functionality of the old SpawnArgs class as well as the interface of
Entity. Since most downstream users of the ientity.h header also need
the full definition of Entity, most ientity.h includes have been
replaced with scene/Entity.h.
mod - include/ientity.h Diff File
mod - libs/entitylib.h Diff File
mod - libs/maplib.h Diff File
mod - libs/scene/AttachmentData.cpp Diff File
mod - libs/scene/AttachmentData.h Diff File
mod - libs/scene/CMakeLists.txt Diff File
mod - libs/scene/ChildPrimitives.cpp Diff File
mv - libs/scene/SpawnArgs.cpp → libs/scene/Entity.cpp Diff File
add - libs/scene/Entity.h Diff File
add - libs/scene/EntityAttachment.h Diff File
mod - libs/scene/EntityBreakdown.h Diff File
mod - libs/scene/ModelFinder.cpp Diff File
rm - libs/scene/SpawnArgs.h Diff
mod - libs/scene/merge/MergeAction.h Diff File
mod - libs/scene/merge/NodeUtils.h Diff File
mod - libs/selection/CollectiveSpawnargs.h Diff File
mod - libs/selection/EntitiesFirstSelector.h Diff File
mod - libs/selection/EntitySelection.h Diff File
mod - libs/selectionlib.h Diff File
mod - libs/wxutil/preview/EntityPreview.cpp Diff File
mod - libs/wxutil/preview/EntityPreview.h Diff File
mod - libs/wxutil/preview/ParticlePreview.cpp Diff File
mod - plugins/dm.conversation/ActorNodeFinder.h Diff File
mod - plugins/dm.conversation/ConversationDialog.h Diff File
mod - plugins/dm.conversation/ConversationEntity.cpp Diff File
mod - plugins/dm.conversation/ConversationEntity.h Diff File
mod - plugins/dm.conversation/ConversationEntityFinder.h Diff File
mod - plugins/dm.conversation/ConversationKeyExtractor.h Diff File
mod - plugins/dm.difficulty/DifficultyDialog.h Diff File
mod - plugins/dm.difficulty/DifficultyEntity.cpp Diff File
mod - plugins/dm.difficulty/DifficultyEntity.h Diff File
mod - plugins/dm.difficulty/DifficultyEntityFinder.h Diff File
mod - plugins/dm.editing/AIEditingPanel.h Diff File
mod - plugins/dm.editing/AIHeadPropertyEditor.cpp Diff File
mod - plugins/dm.editing/AIVocalSetPropertyEditor.cpp Diff File
mod - plugins/dm.editing/SpawnargLinkedCheckbox.h Diff File
mod - plugins/dm.editing/SpawnargLinkedSpinButton.h Diff File
mod - plugins/dm.gameconnection/DiffDoom3MapWriter.cpp Diff File
mod - plugins/dm.gameconnection/GameConnection.cpp Diff File
mod - plugins/dm.gameconnection/MapObserver.cpp Diff File
mod - plugins/dm.gameconnection/MapObserver.h Diff File
mod - plugins/dm.gui/ReadableEditorDialog.cpp Diff File
mod - plugins/dm.gui/plugin.cpp Diff File
mod - plugins/dm.objectives/ObjectiveEntity.cpp Diff File
mod - plugins/dm.objectives/ObjectiveEntityFinder.cpp Diff File
mod - plugins/dm.objectives/ObjectiveKeyExtractor.h Diff File
mod - plugins/dm.objectives/ObjectivesEditor.cpp Diff File
mod - plugins/dm.objectives/TargetList.h Diff File
mod - plugins/dm.objectives/ce/specpanel/EntityNameSpecifierPanel.cpp Diff File
mod - plugins/dm.objectives/objectives.cpp Diff File
mod - plugins/dm.stimresponse/SRPropertyLoader.h Diff File
mod - plugins/dm.stimresponse/SRPropertyRemover.h Diff File
mod - plugins/dm.stimresponse/StimResponseEditor.h Diff File
mod - plugins/dm.stimresponse/StimTypes.h Diff File
mod - plugins/script/CMakeLists.txt Diff File
mod - plugins/script/interfaces/EntityInterface.cpp Diff File
mod - plugins/script/interfaces/EntityInterface.h Diff File
mod - radiant/ui/UserInterfaceModule.cpp Diff File
mod - radiant/ui/animationpreview/AnimationPreview.cpp Diff File
mod - radiant/ui/animationpreview/AnimationPreview.h Diff File
mod - radiant/ui/common/EntityChooser.cpp Diff File
mod - radiant/ui/eclasstree/EClassTree.cpp Diff File
mod - radiant/ui/einspector/AddPropertyDialog.cpp Diff File
mod - radiant/ui/einspector/AddPropertyDialog.h Diff File
mod - radiant/ui/einspector/AnglePropertyEditor.cpp Diff File
mod - radiant/ui/einspector/BooleanPropertyEditor.cpp Diff File
mod - radiant/ui/einspector/ClassnamePropertyEditor.cpp Diff File
mod - radiant/ui/einspector/ColourPropertyEditor.cpp Diff File
mod - radiant/ui/einspector/EntityInspector.cpp Diff File
mod - radiant/ui/einspector/EntityPropertyEditor.cpp Diff File
mod - radiant/ui/einspector/FloatPropertyEditor.cpp Diff File
mod - radiant/ui/einspector/FxPropertyEditor.cpp Diff File
mod - radiant/ui/einspector/ModelPropertyEditor.cpp Diff File
mod - radiant/ui/einspector/PropertyEditor.cpp Diff File
mod - radiant/ui/einspector/SkinPropertyEditor.cpp Diff File
mod - radiant/ui/einspector/SoundPropertyEditor.cpp Diff File
mod - radiant/ui/einspector/TexturePropertyEditor.cpp Diff File
mod - radiant/ui/einspector/Vector3PropertyEditor.cpp Diff File
mod - radiant/ui/lightinspector/LightInspector.cpp Diff File
mod - radiant/ui/materials/editor/MaterialPreview.cpp Diff File
mod - radiant/ui/ortho/OrthoContextMenu.cpp Diff File
mod - radiant/xyview/OrthoView.cpp Diff File
mod - radiantcore/brush/csg/CSG.cpp Diff File
mod - radiantcore/brush/export/CollisionModel.cpp Diff File
mod - radiantcore/entity/AngleKey.cpp Diff File
mod - radiantcore/entity/ColourKey.h Diff File
mod - radiantcore/entity/EntityModule.cpp Diff File
mod - radiantcore/entity/EntityModule.h Diff File
mod - radiantcore/entity/EntityNode.cpp Diff File
mod - radiantcore/entity/EntityNode.h Diff File
mod - radiantcore/entity/EntitySettings.h Diff File
mod - radiantcore/entity/KeyObserverDelegate.h Diff File
mod - radiantcore/entity/KeyObserverMap.h Diff File
mod - radiantcore/entity/KeyValueObserver.cpp Diff File
mod - radiantcore/entity/KeyValueObserver.h Diff File
mod - radiantcore/entity/NameKey.h Diff File
mod - radiantcore/entity/NameKeyObserver.cpp Diff File
mod - radiantcore/entity/NameKeyObserver.h Diff File
mod - radiantcore/entity/NamespaceManager.cpp Diff File
mod - radiantcore/entity/NamespaceManager.h Diff File

master ebbea317

19.03.2024 19:42

orbweaver


Details Diff
Rename scenegraph library to scene
mod - CMakeLists.txt Diff File
mod - libs/scene/CMakeLists.txt Diff File
mod - libs/wxutil/CMakeLists.txt Diff File
mod - radiant/CMakeLists.txt Diff File
mod - radiantcore/CMakeLists.txt Diff File
mod - test/CMakeLists.txt Diff File

master 0108265d

13.03.2024 20:26

orbweaver


Details Diff
Devirtualise EntityKeyValue

Instead of a virtual interface EntityKeyValue implemented by a concrete
KeyValue class, there is now only a concrete EntityKeyValue class
defined in the scene library and used directly by downstream code.
mod - include/ientity.h Diff File
mod - libs/scene/CMakeLists.txt Diff File
mv - radiantcore/entity/KeyValue.cpp → libs/scene/EntityKeyValue.cpp Diff File
add - libs/scene/EntityKeyValue.h Diff File
mv - radiantcore/entity/SpawnArgs.cpp → libs/scene/SpawnArgs.cpp Diff File
mv - radiantcore/entity/SpawnArgs.h → libs/scene/SpawnArgs.h Diff File
mod - libs/selection/CollectiveSpawnargs.h Diff File
mod - plugins/dm.gameconnection/MapObserver.cpp Diff File
mod - radiantcore/CMakeLists.txt Diff File
mod - radiantcore/entity/EntityModule.cpp Diff File
mod - radiantcore/entity/KeyObserverMap.h Diff File
rm - radiantcore/entity/KeyValue.h Diff
mod - radiantcore/entity/KeyValueObserver.cpp Diff File
mod - radiantcore/entity/NameKey.h Diff File
mod - radiantcore/entity/NameKeyObserver.cpp Diff File
mod - radiantcore/entity/NamespaceManager.h Diff File
mod - radiantcore/entity/generic/GenericEntityNode.h Diff File
mod - radiantcore/entity/target/TargetKey.cpp Diff File
mod - radiantcore/entity/target/TargetableNode.h Diff File
mod - test/Entity.cpp Diff File

master 50f1e1ca

13.03.2024 20:26

orbweaver


Details Diff
Ignore perf.data files
mod - .gitignore Diff File
mv - radiantcore/entity/AttachmentData.cpp → libs/scene/AttachmentData.cpp Diff File
mv - radiantcore/entity/AttachmentData.h → libs/scene/AttachmentData.h Diff File

master 9a9c014c

09.03.2024 10:37

greebo


Details Diff
0006502: Fix XmlTest resource path in Windows Affected Issues
0006502
mod - test/XmlUtil.cpp Diff File

master 04e753ca

08.03.2024 05:58

greebo


Details Diff
0006502: Remove win_iconv property sheet, doesn't seem to be used anymore Affected Issues
0006502
rm - tools/msvc/properties/win_iconv.props Diff

master e248785f

08.03.2024 05:52

greebo


Details Diff
Bump version
mod - include/version.h Diff File

master 6f34491b

08.03.2024 05:43

greebo


Details Diff
0006502: Remove libxml2 property sheet, minor tweaks to Node file pair. Affected Issues
0006502
mod - libs/xmlutil/Node.cpp Diff File
mod - libs/xmlutil/Node.h Diff File
mod - tools/msvc/DarkRadiant.vcxproj Diff File
mod - tools/msvc/DarkRadiantCore.vcxproj Diff File
mod - tools/msvc/Tests/Tests.vcxproj Diff File
mod - tools/msvc/dm.conversation.vcxproj Diff File
mod - tools/msvc/dm.difficulty.vcxproj Diff File
mod - tools/msvc/dm.gui.vcxproj Diff File
mod - tools/msvc/dm.objectives.vcxproj Diff File
mod - tools/msvc/dm.stimresponse.vcxproj Diff File
rm - tools/msvc/properties/libxml2.props Diff
mod - tools/msvc/vcs.vcxproj Diff File
mod - tools/msvc/xmlutillib.vcxproj Diff File

master 0674a6cc

08.03.2024 05:25

greebo


Details Diff
0006502: Update LICENSE, add pugixml license file as taken from their github repository Affected Issues
0006502
mod - LICENSE Diff File
add - libs/pugixml/LICENSE Diff File

master 41451ae4

08.03.2024 05:18

greebo


Details Diff
Merge remote-tracking branch 'remotes/orbweaver/master'

# Conflicts:
# libs/xmlutil/Document.cpp
# libs/xmlutil/Document.h
mod - .gitlab-ci.yml Diff File
mod - CMakeLists.txt Diff File
add - libs/pugixml/pugiconfig.hpp Diff File
add - libs/pugixml/pugixml.cpp Diff File
add - libs/pugixml/pugixml.hpp Diff File
mod - libs/wxutil/GLWidget.cpp Diff File
mod - libs/xmlutil/CMakeLists.txt Diff File
mod - libs/xmlutil/Document.cpp Diff File
mod - libs/xmlutil/Document.h Diff File
mod - libs/xmlutil/Node.cpp Diff File
mod - libs/xmlutil/Node.h Diff File
rm - libs/xmlutil/XmlModule.cpp Diff
rm - libs/xmlutil/XmlModule.h Diff
mod - radiant/eventmanager/ShortcutSaver.h Diff File
mod - radiantcore/Radiant.cpp Diff File
mod - radiantcore/map/format/portable/PortableMapWriter.cpp Diff File
mod - radiantcore/xmlregistry/RegistryTree.cpp Diff File
mod - test/RadiantTest.h Diff File
mod - test/XmlUtil.cpp Diff File
mod - test/algorithm/XmlUtils.h Diff File
add - test/resources/xml/darkmod.game Diff File
add - test/resources/xml/input.xml Diff File

master df2f7a96

06.03.2024 20:25

orbweaver


Details Diff
0005502: set depth buffer size to 24 bits

Although the wxGLCanvas wiki tutorial uses a depth buffer of 16 bits, this is
extremely low precision for a depth buffer, and is likely the cause of
the Z fighting issues described in 0005502.

We now set it to the more usual 24 bits, as confirmed by OpenGL
tutorials such as https://learnopengl.com/Advanced-OpenGL/Depth-testing
Affected Issues
0005502
mod - libs/wxutil/GLWidget.cpp Diff File

master d837e020

05.03.2024 20:34

Matthew Mott


Details Diff
Attempt to invoke asciidoctor in CI configuration
mod - .gitlab-ci.yml Diff File

master c3b67e55

21.02.2024 20:01

orbweaver


Details Diff
Remove remnants of libxml2
mod - CMakeLists.txt Diff File
mod - libs/xmlutil/CMakeLists.txt Diff File
mod - libs/xmlutil/Document.cpp Diff File
mod - libs/xmlutil/Node.cpp Diff File
rm - libs/xmlutil/XmlModule.cpp Diff
rm - libs/xmlutil/XmlModule.h Diff
mod - radiantcore/Radiant.cpp Diff File

master 46192738

30.01.2024 20:19

orbweaver


Details Diff
Replace usage of libxml2 with pugixml

pugixml is a lightweight C++ XML parsing library with a much more
ergonomic interface than libxml2, and more importantly fixes the
mysterious problem with XPaths that xmlReadFile() on Linux seems to
introduce.

Since our usage of XML was already wrapped in the xmlutil::Node and
Document classes, and well covered by unit tests, this replacement was
much more straightforward that it might otherwise have been. Very few
changes to the application outside of the xmlutil library were required,
and the only change to a unit test involved making the "round-trip"
SaveDocumentTo{String,File} tests more tolerant of formatting changes
since pugixml does not preserve formatting.

The pugixml library itself has been imported into libs/pugixml and the
HEADER_ONLY option set in its config, which will hopefully make the
Windows integration easy (or even a no-op).
add - libs/pugixml/pugiconfig.hpp Diff File
add - libs/pugixml/pugixml.cpp Diff File
add - libs/pugixml/pugixml.hpp Diff File
mod - libs/xmlutil/Document.cpp Diff File
mod - libs/xmlutil/Document.h Diff File
mod - libs/xmlutil/Node.cpp Diff File
mod - libs/xmlutil/Node.h Diff File
mod - radiant/eventmanager/ShortcutSaver.h Diff File
mod - radiantcore/map/format/portable/PortableMapWriter.cpp Diff File
mod - radiantcore/xmlregistry/RegistryTree.cpp Diff File
mod - test/XmlUtil.cpp Diff File
mod - test/algorithm/XmlUtils.h Diff File

master 25117a18

30.01.2024 20:15

orbweaver


Details Diff
Add basic unit tests for reading input.xml and a .game file

XmlTest now tests reading some real-world XML files as used by
DarkRadiant, rather than just a test XML file.
mod - test/XmlUtil.cpp Diff File
add - test/resources/xml/darkmod.game Diff File
add - test/resources/xml/input.xml Diff File

master dcb8a65c

28.01.2024 14:54

orbweaver


Details Diff
RadiantTest re-throws exception instead of abort() on Linux

abort() does not provide any information about the exception itself,
whereas re-throwing it results in the what() description appearing on
the console.
mod - test/RadiantTest.h Diff File
 First  Prev  1 2 3 ... 6 7 8 9 10 11 12 ... 30 ... 60 ... 90 ... 120 ... 150 ... 180 ... 210 ... 240 ... 269 270 271  Next  Last