Changesets: DarkRadiant

master cd3a24ef

22.08.2023 19:21

Matthew Mott


Details Diff
Use inline initialisation for XYWnd class members
mod - radiant/xyview/XYWnd.cpp Diff File
mod - radiant/xyview/XYWnd.h Diff File

master b1afc44e

09.08.2023 19:14

Matthew Mott


Details Diff
Registry stores keyvalues using XML content (not attributes)

Instead of storing key values in a "value" attribute on a node with no
content, the value is now stored as content and the legacy "value"
attribute (if present) is removed.

To retain backwards compatibility, a "value" attribute will still be
used for retrieval if the node does not contain any content.
mod - libs/xmlutil/Node.cpp Diff File
mod - libs/xmlutil/Node.h Diff File
mod - radiantcore/xmlregistry/RegistryTree.cpp Diff File
mod - radiantcore/xmlregistry/XMLRegistry.cpp Diff File
mod - test/Registry.cpp Diff File

master 7c711ba7

08.08.2023 19:10

Matthew Mott


Details Diff
Remove unused RegistryTree::get()

XMLRegistry never calls this method; its own get() method looks up the
value attribute directly.
mod - radiantcore/xmlregistry/RegistryTree.cpp Diff File
mod - radiantcore/xmlregistry/RegistryTree.h Diff File

master a124997f

02.08.2023 19:19

Matthew Mott


Details Diff
Remove some redundancy in XMLRegistry implementation

The get() method is now just forwarding to getAttribute() to obtain the
"value" attribute, then calling utf8_to_mb() on the returned string.
mod - radiantcore/xmlregistry/XMLRegistry.cpp Diff File

master f092d3b6

02.08.2023 19:12

Matthew Mott


Details Diff
Further tests for getting and setting registry keyvalues
mod - libs/xmlutil/Node.h Diff File
mod - test/Registry.cpp Diff File

master 6b234eb8

01.08.2023 19:22

Matthew Mott


Details Diff
Initial RegistryTest which tests getting some key values

Strangely we don't yet have a unit test for the registry itself,
although registry functionality is exercised as a component of many
other tests.
mod - test/CMakeLists.txt Diff File
add - test/Registry.cpp Diff File

master a00e7e56

26.07.2023 19:16

Matthew Mott


Details Diff
Move string constant out of iregistry.h

On Linux this gives a warning about possible ODR violation by having a
defined string constant in a header file. The constant is only used in
XMLRegistry.cpp so does not need to be exposed as part of the interface.
mod - include/iregistry.h Diff File
mod - radiantcore/xmlregistry/XMLRegistry.cpp Diff File

master 1360d3fe

25.07.2023 19:01

Matthew Mott


Details Diff
Remove all exception-based string::convert implementations

Using exceptions to detect conversion failures is terrible for
performance, and the need for an explicit specialisation for every type
so that a different std::sto[??]() function can be called negates the
benefit of using templates altogether.

There is now a generic implementation using stringstream, along with
specialisations for bool (which behaves differently to the usual
stream extraction) and std::string (which is a no-op).

The separate tryConvertTo{Float,Int}() which were introduced to improve
performance in certain hot code paths, are unaffected by this change.
mod - libs/string/convert.h Diff File

master 45ae7f0f

19.07.2023 19:32

Matthew Mott


Details Diff
Test string conversion to Vector3/4
mod - test/Basic.cpp Diff File

master f3640e07

19.07.2023 19:29

Matthew Mott


Details Diff
Fix bug in string conversion to Vector4

A stream extraction failure sets failbit, not badbit, therefore we need
to detect the error with fail().
mod - libs/string/convert.h Diff File

master 98e97c98

19.07.2023 19:12

Matthew Mott


Details Diff
Add tests for (rather strange) string-to-bool conversion
mod - test/Basic.cpp Diff File

master 8edc66a7

19.07.2023 18:31

Matthew Mott


Details Diff
Test string conversion to all basic numeric types
mod - test/Basic.cpp Diff File

master 0c0d6a7b

18.07.2023 19:27

Matthew Mott


Details Diff
Add basic tests for our string conversion functions
mod - test/Basic.cpp Diff File

master 97950da7

12.07.2023 19:26

Matthew Mott


Details Diff
Remove unneeded static methods from XYWnd

getViewTypeStr() was never called at all; getViewTypeTitle() can be
replaced with a simple map.
mod - radiant/xyview/XYWnd.cpp Diff File
mod - radiant/xyview/XYWnd.h Diff File

master 78d266d3

11.07.2023 19:36

Matthew Mott


Details Diff
Remove some duplication in XYWnd::snapToGrid()
mod - radiant/xyview/XYWnd.cpp Diff File

master ea20e9e6

06.06.2023 19:26

Matthew Mott


Details Diff
Streamline X/Y/Z members of RotateManipulator

Introduce a new struct template XYZ<T> which defines .x, .y and .z
members (but otherwise provides no functionality beyond mere
aggregation). This is used in RotateManipulator to reduce the need to
manually define separate _memberX, _memberY and _memberZ triplets for
various purposes.

The circle visibility members are removed entirely rather than placed in
an XYZ<bool>, since they are never referenced outside the function which
sets their values.
add - libs/math/XYZ.h Diff File
mod - radiantcore/selection/BasicSelectable.h Diff File
mod - radiantcore/selection/manipulators/Renderables.h Diff File
mod - radiantcore/selection/manipulators/RotateManipulator.cpp Diff File
mod - radiantcore/selection/manipulators/RotateManipulator.h Diff File

master 789aa924

03.05.2023 18:59

Matthew Mott


Details Diff
Remove the black "sphere" circle from Rotate manipulator

The black circle represented the ability to perform a trackball-like
arbitrary rotation in screen space. This functionality still exists, but
the black circle itself had no real purpose since you perform the
trackball rotation by clicking on empty space, not on any particular
circle.

The _circleSphere renderable is still present since it is used for mouse
selection, but it no longer renders on screen.
mod - radiantcore/selection/BasicSelectable.h Diff File
mod - radiantcore/selection/manipulators/RotateManipulator.cpp Diff File

master 95a2c756

19.04.2023 19:22

Matthew Mott


Details Diff
Improve visibility of manipulators

Increase line thickness to 2, and remove the separate dotted line
rendering for "hidden" line sections.
mod - radiantcore/rendersystem/backend/BuiltInShader.cpp Diff File

master a1db9692

28.03.2023 19:49

Matthew Mott


Details Diff
Remove Linux-specific wxBitmap loading code

This change was a failed attempt to fix the ArtProvider shutdown crash,
but now this incomprehensible problem is back and the Linux-specific
code is obviously providing no benefit.
mod - radiant/RadiantApp.cpp Diff File

master 5d4eecf9

20.03.2023 10:38

greebo

Committer: GitHub


Details Diff
0006274: Merge pull request 0000036 from chalonverse/rot-dupe-fix

Fix bug where cloning an entity using editor_rotatable and an angle key would cause the rotation matrix to be reset by an empty rotation key
Affected Issues
0000036, 0006274
mod - radiantcore/entity/generic/GenericEntityNode.cpp Diff File
mod - test/Entity.cpp Diff File
add - test/resources/tdm/def/gameplay.def Diff File

master 77ed22df

20.03.2023 08:47

chalonverse


Details Diff
Add unit tests for 0006274

(cherry picked from commit fa18e656e78edfc0cd15bae7fc84efdaea51abfe)
Affected Issues
0006274
mod - test/Entity.cpp Diff File
add - test/resources/tdm/def/gameplay.def Diff File

master c5f688b2

20.03.2023 03:29

chalonverse


Details Diff
Fix bug where duplicating an entity using "editor_rotatable" and an "angle" key would cause the rotation matrix to be reset by an empty "rotation" key

(cherry picked from commit 82895000c41d8a72a7d212208091c7deaf00dc50)
mod - radiantcore/entity/generic/GenericEntityNode.cpp Diff File

master b89843f8

09.03.2023 17:57

greebo

Committer: GitHub


Details Diff
Merge pull request 0000035 from illwieckz/include-utility

Include utility in EntityClass.cpp
Affected Issues
0000035
mod - radiantcore/eclass/EntityClass.cpp Diff File

master 522065c9

06.03.2023 18:23

illwieckz


Details Diff
Include utility in EntityClass.cpp
mod - radiantcore/eclass/EntityClass.cpp Diff File

master c72e5ba7

01.03.2023 20:39

Matthew Mott


Details Diff
Rename WireframeOverlay to ManipulatorWireframe

This shader is only used to draw manipulators, and does not really seem
to be an "overlay" (except in the sense that it renders on top of other
things).
mod - include/irender.h Diff File
mod - radiantcore/rendersystem/backend/BuiltInShader.cpp Diff File
mod - radiantcore/rendersystem/backend/ColourShader.cpp Diff File
mod - radiantcore/rendersystem/backend/OpenGLState.h Diff File
mod - radiantcore/selection/manipulators/ModelScaleManipulator.cpp Diff File
mod - radiantcore/selection/manipulators/RotateManipulator.cpp Diff File
mod - radiantcore/selection/manipulators/TranslateManipulator.cpp Diff File
mod - radiantcore/selection/textool/TextureToolRotateManipulator.cpp Diff File
 First  Prev  1 2 3 4 5 6 7 8 ... 30 ... 60 ... 90 ... 120 ... 150 ... 180 ... 210 ... 240 ... 260 261 262  Next  Last