Lioncache
661a36f84a
CLink: Collapse null checking
2025-12-14 02:17:37 -05:00
Lioncache
3f7eb16b54
CLink: Simplify comparison operator
2025-12-14 02:15:51 -05:00
Lioncache
95f46dbc23
CLight: Return by reference where applicable
...
Prevents unnecessary copies.
2025-12-14 02:14:19 -05:00
Lioncache
8e4e7f7742
CCollisionMesh: Return Bounds() by const reference
...
Avoids unnecessary 24 byte copies.
2025-12-14 01:55:20 -05:00
Lioncache
bff2f422e6
CBoneTransformData: Pass by const where applicable
...
These don't modify their input.
2025-12-14 01:54:16 -05:00
Lioncache
2825960079
CBasicModel: Return CAABox by const reference
...
Allows avoiding unnecessary 24 byte copies, plus unnecessary function
calls for extremely trivial members.
2025-12-14 01:43:45 -05:00
Lioncache
71303fffd3
CCamera: Pass vectors by reference
...
Avoids a few redundant copies.
2025-12-14 01:18:01 -05:00
Lioncache
057c52f5e5
CGameArea: Pass transform by const reference
...
Gets rid of 64-byte moves where they aren't necessary.
2025-12-14 00:57:17 -05:00
Lioncache
60f647b40f
CWorldEditor: Remove redundant cast
2025-12-14 00:50:16 -05:00
Lioncache
2c58d9da95
INodeEditor: Fix gizmo action bindings
...
Now these work again since the move to Qt6. Also adds some left-handed
equivalents for the workspace.
2025-12-14 00:26:40 -05:00
Lioncache
3fe7f99fa5
CStringEditor: Fix capture of keyboard shortcuts in CStringEditor
...
Previously, these keyboard shortcuts didn't work.
2025-12-14 00:09:03 -05:00
Lioncache
063d8899bf
CStringTable: Make use of minmax() over individual min/max
...
Same thing less code.
2025-12-13 23:12:33 -05:00
Lioncache
4cdc26af50
CStringTable: Prevent out of bounds vector accesses in SetStringName()
...
If we have a vector containing all empty strings (happens if you edit a
string in the UI and then make it empty again), then we keep popping and
accessing non-existent elements.
This is a pretty trivial case that can occur when editing string tables.
2025-12-13 22:34:44 -05:00
Lioncache
b81b3b3d01
CStringTable: Make unrecognized image type a warning
...
This can be hit while creating a project. However this would be hit in
release mode too, but wouldn't crash the application, because the trap
signal is ifdef'd out.
2025-12-13 22:32:34 -05:00
Lioncache
78f3f451a2
CStringEditor: Convert SLOT() usage over to function binding
...
Same behavior, more concrete types.
2025-12-13 22:28:40 -05:00
Lioncache
f7305b51b6
CStateMessageModel: Fix signedness conversion issues
2025-12-13 21:30:16 -05:00
Lioncache
2dcd663fbd
CStateMessageModel: push_back -> emplace_back
...
Allows for in-place construction.
2025-12-13 21:19:18 -05:00
Lioncache
e533d5e347
CResourceMimeData: Remove redundant initializers
...
This will already occur.
2025-12-13 20:59:49 -05:00
Lioncache
1a60a9c7c7
CPropertyNameValidator: Avoid redundant string construction
...
Also simplifies scope
2025-12-13 20:37:05 -05:00
Lioncache
798d6e61dd
CResourceProxyModel: Pass type filters by const
...
These aren't modified.
2025-12-12 12:32:16 -05:00
Lioncache
e7812fb1e4
CPoiMapModel: Simplify list management
2025-12-12 12:05:21 -05:00
Lioncache
7f714eee07
CPoiMapModel: Pass by const where applicable
2025-12-12 11:35:17 -05:00
Lioncache
b2fbbaa87c
CFileNameValidator: Simplify looping
2025-12-12 09:11:28 -05:00
Lioncache
6666648eaa
CFileNameValidator: Make constructor explicit
2025-12-12 09:08:30 -05:00
Lioncache
e0c489938b
CEditLinkCommand: Remove unimplemented function
2025-12-12 09:03:47 -05:00
Lioncache
cb21f39516
CPropertyModel: Pass by const in IndexForProperty()
...
This doesn't need to be so overly restrictive, since it's only being
used to query a map.
2025-12-09 16:01:47 -05:00
Lioncache
4c5d15c1c0
CPropertyModel: Remove unimplemented prototype
...
Cleaner interface.
2025-12-09 15:51:40 -05:00
Lioncache
da5197b6c4
CSceneNode: Make NodeType() const
...
These don't modify member state.
2025-12-09 15:43:17 -05:00
Lioncache
c662ef6266
CScene: Pass by const in getters
...
These are overly restrictive, since the parameters are only ever
queried.
2025-12-09 15:10:23 -05:00
Lioncache
cddb342632
CPoiListDialog: Tidy up list management
2025-12-09 14:46:55 -05:00
Lioncache
98d9f9b962
CPoiMapSidebar: Tidy up formatting
2025-12-09 14:34:37 -05:00
Lioncache
3c2bd55df6
CPoiMapSidebar: Pass QModelIndex by const reference
2025-12-09 14:28:18 -05:00
Lioncache
b5615b4a02
CCamera: Fix wonky bracing
2025-12-08 19:56:00 -05:00
Lioncache
edbbe9f097
CCamera: Simplify ValidatePitch()
...
We can just use std::clamp here.
2025-12-08 19:48:24 -05:00
Lioncache
f6a64565cd
CCamera: Simplify CastRay()
...
We can just make use of CRay's constructor to simplify the
initialization
2025-12-08 19:45:07 -05:00
Lioncache
561b0e08f6
CCamera: Allow toggleable camera movement speed
...
In a lot of 3D scene editors, it's quite common to have a default speed
that the camera can move at, plus a quicker one when shift (or some
other kind of keybind is held. We can replicate this here as a fixed
increment, but in the future this could also potentially be a
configurable UI setting.
Just makes the viewport expectations a little more natural like Blender
or 3DS Max.
2025-12-08 19:30:08 -05:00
Lioncache
04f73a9687
Externals: Update LibCommon
...
Fixes a bug in string splitting that broke the texture selection dialogs
in the model editor. They should now populate properly and let you
change textures if you want to do a little modding or something of the
sort.
It also exposed a bug where we had a stack overflow case
that was never hit until now. IsValidDirectoryPath() was intended to be
calling IsValidDirectoryName() on the consitituent parts of the path,
but was calling into itself. The only reason this was never hit in
practice is because the bugged Split() function would keep discarding
the end character in the strings recursively over the course of
execution until the strings were completely empty (oof!).
It also turns out that the handler for the indirect texture handling was
never hooked up to a slot in the model window. So, not only could the
model never have it's indirect texture changed, but would never render
it either, since the respective material would never be set.
We essentially smoked 3 bugs with a one-liner at the same time.
2025-12-08 18:46:24 -05:00
Lioncache
69290914b8
CResourceProxyModel: Simplify exit cases in filterAcceptsRow()
2025-12-08 15:46:01 -05:00
Lioncache
e231158b1d
CResourceProxyModel: Use forward declarations
...
Reduce the amount of rebuilding necessary.
2025-12-08 15:38:02 -05:00
Lioncache
e33088f8a3
CResourceProxyModel: Move implementation to cpp file
...
Allows modifying how the resource model works without rebuilding
half of the codebase.
2025-12-08 15:18:23 -05:00
Lioncache
e8af8cc4b1
CWorldTreeModel: Use built-in filtering facilities
...
The ability to filter via a string is already built into the proxy
model. This also extends the search bar to allow general regular
expressions as well out of the box without any additional work.
2025-12-08 15:00:50 -05:00
Lioncache
21d482f35e
CWorldInforSidebar: Pass QModelIndex by const reference
...
Avoids some trivial copies.
2025-12-08 14:27:10 -05:00
Lioncache
3f8271004f
CWorldInfoSidebar: Add missing UICommon include
...
Gets rid of an indirect include.
Also adds a forward declaration to prevent build failures in the future.
2025-12-08 14:11:26 -05:00
Lioncache
e6bf47112a
CVirtualDirectory: Pass by const in IsDescendantOf
...
This isn't modified.
2025-12-08 04:13:56 -05:00
Lioncache
d335465141
CMaterialLoader: Formatting shenanigans
2025-12-08 03:26:45 -05:00
Lioncache
934bdaf889
CModel: Mark query functions as const
2025-12-08 03:04:33 -05:00
Lioncache
f3fd7f8268
CGameInfo: Reduce string copies in formatting
2025-12-07 12:20:09 -05:00
Lioncache
5f7e0e1e7f
CGameExporter: Pass CAssetID by reference in MakeWorldName()
...
Just prevents a copy where one isn't necessary
2025-12-07 12:19:44 -05:00
Lioncache
53e52d3587
CGameExporter: Brace logical AND between ORs
...
Silences potential warnings.
2025-12-07 12:09:14 -05:00
Lioncache
5d3086ec31
CModelEditorWindow: Convert old signal/slot to modern style
...
Turns out this was attached incorrectly.
2025-12-07 09:47:45 -05:00