Changeset - 849599175e99
[Not reviewed]
default
0 3 0
Drew Perttula - 7 years ago 2018-05-17 06:50:11
drewp@bigasterisk.com
adjusters start displaying again. just timeline zoom ones.
Ignore-this: 31fb30b2020314f3e1dcdcadefa422c1
3 files changed with 22 insertions and 22 deletions:
0 comments (0 inline, 0 general)
light9/web/timeline/adjusters.coffee
Show inline comments
 
@@ -5,7 +5,7 @@ Drawing = window.Drawing
 
coffeeElementSetup(class AdjustersCanvas extends Polymer.mixinBehaviors([Polymer.IronResizableBehavior], Polymer.Element)
 
  @is: 'light9-adjusters-canvas'
 
  @getter_properties:
 
    adjs: { type: Object, notify: true }, # adjId: Adjustable
 
    setAdjuster: {type: Function, notify: true }
 
  @getter_observers: [
 
    'updateAllCoords(adjs)'
 
  ]
 
@@ -20,6 +20,11 @@ coffeeElementSetup(class AdjustersCanvas
 
    @ctx = @$.canvas.getContext('2d')
 
    
 
    @redraw()
 
    @setAdjuster = @_setAdjuster.bind(@)
 

	
 
    @addEventListener('mousedown', @onDown.bind(@))
 
    @addEventListener('mousemove', @onMove.bind(@))
 
    @addEventListener('mouseup', @onUp.bind(@))
 
   
 
  onDown: (ev) ->
 
    if ev.buttons == 1
 
@@ -41,7 +46,7 @@ coffeeElementSetup(class AdjustersCanvas
 
    @currentDrag.adj.endDrag()
 
    @currentDrag = null
 
    
 
  setAdjuster: (adjId, makeAdjustable) ->
 
  _setAdjuster: (adjId, makeAdjustable) ->
 
    # callers register/unregister the Adjustables they want us to make
 
    # adjuster elements for. Caller invents adjId.  makeAdjustable is
 
    # a function returning the Adjustable or it is null to clear any
 
@@ -54,8 +59,7 @@ coffeeElementSetup(class AdjustersCanvas
 
        @adjs[adjId] = adj
 
        adj.id = adjId
 

	
 
    #@debounce('adj redraw', @redraw.bind(@))
 
    setTimeout((() => @redraw()), 2)
 
    @redraw()
 

	
 
    window.debug_adjsCount = Object.keys(@adjs).length
 

	
light9/web/timeline/timeline-elements.html
Show inline comments
 
@@ -138,8 +138,10 @@
 
  <template>
 
    <style>
 
     :host {
 
         pointer-events: none;
 
     }
 
     svg {
 
         pointer-events: none;
 
         width: 100%;
 
         height: 100%;
 
     }
 
@@ -189,7 +191,7 @@
 
<dom-module id="light9-adjusters-canvas">
 
  <template>
 
    <style>
 
     #canvas, :host {
 
     #canvas {
 
         pointer-events: none;
 
     }
 
    </style>
light9/web/timeline/timeline.coffee
Show inline comments
 
@@ -114,7 +114,13 @@ coffeeElementSetup(class TimelineEditor 
 
    '_onGraph(graph)',
 
    '_onSongDuration(songDuration, viewState)',
 
    '_onSongTime(songTime, viewState)',
 
    '_onSetAdjuster(setAdjuster)',
 
  ]
 
  constructor: ->
 
    super()
 
    @viewState = new ViewState()
 
    window.viewState = @viewState
 
    
 
  ready: ->
 
    super.ready()
 
    
 
@@ -127,21 +133,12 @@ coffeeElementSetup(class TimelineEditor 
 
    window.debug_zoomOrLayoutChangedCount = 0
 
    window.debug_adjUpdateDisplay = 0
 
    
 
    @viewState = new ViewState()
 
    window.viewState = @viewState
 
    @setAdjuster = (adjId, makeAdjustable) =>
 
      ac = @$.adjustersCanvas
 
      setTimeout((()=>ac.setAdjuster(adjId, makeAdjustable)),10)
 

	
 
    ko.computed(@zoomOrLayoutChanged.bind(@))
 

	
 
    @trackMouse()
 
    @bindKeys()
 
    @bindWheelZoom(@dia)
 
    @bindWheelZoom(@$.adjustersCanvas)
 

	
 
    @forwardMouseEventsToAdjustersCanvas()
 

	
 
    @makeZoomAdjs()
 
    setInterval(@updateDebugSummary.bind(@), 100)
 

	
 
    @addEventListener('iron-resize', @_onIronResize.bind(@))
 
@@ -172,6 +169,9 @@ coffeeElementSetup(class TimelineEditor 
 
  _onGraph: (graph) ->
 
    @project = new Project(graph)
 

	
 
  _onSetAdjuster: () ->
 
    @makeZoomAdjs()
 
    
 
  updateDebugSummary: ->
 
    elemCount = (tag) -> document.getElementsByTagName(tag).length
 
    @debug = "#{window.debug_zoomOrLayoutChangedCount} layout change,
 
@@ -220,12 +220,6 @@ coffeeElementSetup(class TimelineEditor 
 
    elem.addEventListener 'mousewheel', (ev) =>
 
      @viewState.onMouseWheel(ev.deltaY)
 

	
 
  forwardMouseEventsToAdjustersCanvas: ->
 
    ac = @$.adjustersCanvas
 
    @addEventListener('mousedown', ac.onDown.bind(ac))
 
    @addEventListener('mousemove', ac.onMove.bind(ac))
 
    @addEventListener('mouseup', ac.onUp.bind(ac))
 

	
 
  bindKeys: ->
 
    shortcut.add "Ctrl+P", (ev) =>
 
      @$.music.seekPlayOrPause(@viewState.latestMouseTime())
 
@@ -275,7 +269,7 @@ coffeeElementSetup(class TimelineEditor 
 
      emptyBox: true
 
      # fullzoom is not right- the sides shouldn't be able to go
 
      # offscreen
 
      getTarget: () => $V([@fullZoomX(panObs()), yMid()])
 
      getTarget: () => $V([@viewState.fullZoomX(panObs()), yMid()])
 
      getSuggestedTargetOffset: () => $V([0, 0])
 
      getValueForPos: valForPos
 
      }))
0 comments (0 inline, 0 general)