Commit Graph

4 Commits

Author SHA1 Message Date
Mike Fricker
41fb27cfab Mesh Editor: Minor refactor to improve extensibility of mesh commands
- Removed type-specific base classes for mesh editor commands
- We now have a different base class for 'instant' commands vs 'edit' commands instead
- Removed 'F1' shortcut for move mode.  Will be dealing with that soon.

#rb none

[CL 3428090 by Mike Fricker in Dev-Geometry branch]
2017-05-08 10:55:06 -04:00
Mike Fricker
59b7f4ede5 Mesh Editor extensibility (phase 5)
- Split Edge, Extend Edge and Extend Vertex have been migrated to a new module
- Added support for extensible mesh commands that drag mesh elements immediately after an action
- Fixed selection undo events added with empty selection sets
- Simplified extensibility API for mesh commands that apply during a drag

#codereview richard.talbotwatkin
#rb none

[CL 3372877 by Mike Fricker in Dev-Geometry branch]
2017-03-30 16:00:43 -04:00
Mike Fricker
82d7ab588d Mesh Editor extensibility (phase 3)
- Inset Polygon and Bevel Polygon have been migrated to a new module
- Mesh editing actions that require custom logic before starting a drag can now be built in external modules
- Added 'FindEditableMesh' for cases where we are expecting a mesh to be cached already
- Added 'IsMeshElementSelected' and replaced some uses of 'GetSelectedMeshElementIndex'
- Some additional features for MeshEditorMode have been made public to allow for this.  For example, the currently hovered mesh element can now be queried using 'GetHoveredMeshElement'
- Renamed 'TessellatePolygons' to 'TessellatePolygon' for consistency
- A few bug fixes to previous extensibility checkin

#codereview richard.talbotwatkin
#rb none

[CL 3371559 by Mike Fricker in Dev-Geometry branch]
2017-03-30 10:05:26 -04:00
Mike Fricker
1ab0f172bb Mesh Editor extensibility (phase 2)
- Insert Edge Loop feature has been moved to the PolygonModeling module
- Mesh Editor now has support for editing 'modes' that are registered externally, including VR Editor support.  Lots of changes to UMeshEditorCommand and derived classes.
- Removed UndoHelpers; All Mesh Editor undo now goes through FMeshEditMode::TrackUndo().  This is so that we can use the same code path for regular undo as we use for changes that we'll revert during preview
- Cleaned up some code to use helper methods for selecting/deselecting mesh elements
- Removed all kinds of code that was using TTuples for no good reason
- Fixed a few bugs with the previous extensibility checkin

#codereview richard.talbotwatkin
#rb none

[CL 3369982 by Mike Fricker in Dev-Geometry branch]
2017-03-29 13:37:42 -04:00