Commit Graph

253 Commits

Author SHA1 Message Date
Max Chen
59e0d4e85b Sequencer: Add expand/collapse nodes to menu.
[CL 2652204 by Max Chen in Main branch]
2015-08-11 21:59:06 -04:00
Max Chen
038429262b Sequencer: Fix assign actor for components.
[CL 2651748 by Max Chen in Main branch]
2015-08-11 16:33:21 -04:00
Andrew Rodham
56fba2372a Fixed snapping during section moves and resizes
[CL 2651213 by Andrew Rodham in Main branch]
2015-08-11 11:26:34 -04:00
Max Chen
5152765b9d Sequencer: Toggle sections active/inactive.
[CL 2651209 by Max Chen in Main branch]
2015-08-11 11:24:15 -04:00
Max Chen
d7af10603a Sequencer: Fix infinite section drawing.
[CL 2650715 by Max Chen in Main branch]
2015-08-11 00:51:59 -04:00
Max Chen
3aed05d136 Sequencer: Enforce animatable properties to be Interp properties in the level editor sequencer.
[CL 2649878 by Max Chen in Main branch]
2015-08-10 15:22:29 -04:00
Max Chen
140f455ad1 Sequencer: Change autokey so that it doesn't automatically create a track/key if a track doesn't already exist.
[CL 2649797 by Max Chen in Main branch]
2015-08-10 14:47:22 -04:00
Max Chen
0155143719 Sequencer: Ensure out frame is not less than in frame and vice versa.
[CL 2645364 by Max Chen in Main branch]
2015-08-05 15:24:22 -04:00
Max Chen
eee6a44f28 Sequencer: Should be able to show the range slider regardless of frame numbers and lock the in/out range if the range slider is visible.
[CL 2645363 by Max Chen in Main branch]
2015-08-05 15:24:16 -04:00
Matt Kuhlenschmidt
07a805fd3a Fixed shadowed variable
[CL 2645294 by Matt Kuhlenschmidt in Main branch]
2015-08-05 14:49:11 -04:00
Matt Kuhlenschmidt
c4b97463c7 Sequencer Shot UI improvements
- Shots now attempt to stay connected to each other when modifed.
-- Shots appear "connected" in the shot track so that when one moves, the previous one shrinks and next next shot grows.
-- Holes are filled for deleted shots
- Various low level shot rendering fixes

[CL 2643816 by Matt Kuhlenschmidt in Main branch]
2015-08-04 14:43:12 -04:00
Andrew Rodham
6d33769217 Changed marquee selection to be use drag operation so we can handle section resizing with the marquee tool
[CL 2643412 by Andrew Rodham in Main branch]
2015-08-04 10:26:19 -04:00
Andrew Rodham
bf77ea9a79 Fixed a crash caused by an invalid cast
Top level key area nodes were not being handled correctly by the entity walker. Changed HandleKeyAreaNode to require the owner node for bounds testing purposes.

[CL 2643401 by Andrew Rodham in Main branch]
2015-08-04 10:21:40 -04:00
Andrew Rodham
f2e90ce538 Removed mutable keyword
[CL 2643268 by Andrew Rodham in Main branch]
2015-08-04 08:09:51 -04:00
Andrew Rodham
42164e5db1 Fixed dragging keys in the sequencer with snapping enabled
- Added FSequencerSnapField to simplify snapping calculations and related code.
  - Formalised IMarqueeVisitor as a more generic ISequencerEntityVisitor that can be used to walk a range of visible sequencer entities
  - Updated FMoveKeys drag operation to use FSequencerSnapField and corrected snapping code
  - Track area geometry is now cached in SSequencerTrackArea to simplify SSequencer::GetVirtualTrackArea
  - Fixed grouped keys swallowing each other when dragging other keys over the top

[CL 2643241 by Andrew Rodham in Main branch]
2015-08-04 07:02:16 -04:00
Max Chen
27c8422b29 Sequencer: Allow assign actor only for level editor sequencers.
[CL 2641449 by Max Chen in Main branch]
2015-08-02 00:01:25 -04:00
Max Chen
3df7735b56 Sequencer: Add the ability to assign an actor to an existing sequencer node (replaces the existing binding and possessable).
[CL 2641446 by Max Chen in Main branch]
2015-08-01 23:35:42 -04:00
Max Chen
f11ab05d18 Sequencer: Clean up pass for consistency - capitalize transaction names, no periods in tooltips.
[CL 2641327 by Max Chen in Main branch]
2015-07-31 22:25:15 -04:00
Andrew Rodham
00a0ff92ca Initialization order fix
[CL 2640301 by Andrew Rodham in Main branch]
2015-07-31 10:31:43 -04:00
Max Chen
177d97a292 Sequencer: Fix outliner node broadcast so that selected curves will load in the curve editor.
[CL 2640227 by Max Chen in Main branch]
2015-07-31 09:34:32 -04:00
Andrew Rodham
26802fc823 Fixed undo on moved sequencer keys
[CL 2640187 by Andrew Rodham in Main branch]
2015-07-31 08:26:24 -04:00
Andrew Rodham
b89477a4a4 Autoscroll is now always disabled during looped playback
[CL 2640146 by Andrew Rodham in Main branch]
2015-07-31 07:45:14 -04:00
Andrew Rodham
6e0a2f4509 Fixed some sections not being visited correctly
[CL 2640144 by Andrew Rodham in Main branch]
2015-07-31 07:39:13 -04:00
Andrew Rodham
61c921d54a Added the concept of 'Tools' to the sequencer
Conceptual changes:
  - SSection is no longer responsible for drag operations. This alleviates mouse capture fighting and event ordering issues to do with both SSequencerTrackArea and SSection wanting to potentially handle drag-like events.
  - ISequencerEditTool can be implemented to define interaction logic for the sequencer as a whole.
  - There is only ever one tool active at a time. This is set by SSequencer::SetEditTool.
    - Edit tools are responsible for handling mouse input based on the current environment
  - Sequencer hotspots define particular points of interest on the sequencer UI such as keys, sections etc. Hotspots can optionally define a drag protocol. This may or may not be honored by the current edit tool.
  - FVirtualConvertor has been formalised as FVirtualTrackArea which provides logic for converting between virtual and physical track area space, as well as hit-testing logic.

We currently have two tools: move (V) and marquee (M) selection. Marquee selection has two modes (key and section selection) which can be toggled with the toolbar button, or by pressing the hotkey multiple times.

[CL 2640139 by Andrew Rodham in Main branch]
2015-07-31 07:20:42 -04:00
Max Chen
2b3e1140bd Sequencer: Object should stay selected if a child node is selected. Also, fixed some situations where multiple selection transactions were being generated even though the resulting selection state was correct.
[CL 2639977 by Max Chen in Main branch]
2015-07-31 03:52:52 -04:00