Skip to content

Commit

Permalink
Timeline : Simplify context handling
Browse files Browse the repository at this point in the history
Now `Editor.setContext()` has been removed, we can just acquire the Playback object in the constructor.
  • Loading branch information
johnhaddon committed Jul 10, 2024
1 parent d9968bf commit e1ade85
Showing 1 changed file with 10 additions and 12 deletions.
22 changes: 10 additions & 12 deletions python/GafferUI/Timeline.py
Original file line number Diff line number Diff line change
Expand Up @@ -116,20 +116,18 @@ def __init__( self, scriptNode, **kw ) :
playBackwards = QtWidgets.QShortcut( QtGui.QKeySequence( "Ctrl+Left" ), self._qtWidget() )
playBackwards.activated.connect( functools.partial( Gaffer.WeakMethod( self.__playPausePressed ), False ) )

self.__playback = None
self._updateFromContext( set() )
self.__playback = GafferUI.Playback.acquire( self.context() )
self.__playback.setFrameRange( self.__sliderRangeStart.getValue(), self.__sliderRangeEnd.getValue() )
self.__playback.stateChangedSignal().connect(
Gaffer.WeakMethod( self.__playbackStateChanged ), scoped = False
)
self.__playback.frameRangeChangedSignal().connect(
Gaffer.WeakMethod( self.__playbackFrameRangeChanged ), scoped = False
)

def _updateFromContext( self, modifiedItems ) :
self._updateFromContext( { "frame" } )

if self.__playback is None or not self.__playback.context().isSame( self.context() ) :
self.__playback = GafferUI.Playback.acquire( self.context() )
self.__playback.setFrameRange( self.__sliderRangeStart.getValue(), self.__sliderRangeEnd.getValue() )
self.__playbackStateChangedConnection = self.__playback.stateChangedSignal().connect(
Gaffer.WeakMethod( self.__playbackStateChanged ), scoped = True
)
self.__playbackFrameRangeChangedConnection = self.__playback.frameRangeChangedSignal().connect(
Gaffer.WeakMethod( self.__playbackFrameRangeChanged ), scoped = True
)
def _updateFromContext( self, modifiedItems ) :

if "frame" not in modifiedItems :
return
Expand Down

0 comments on commit e1ade85

Please sign in to comment.