Changeset - 7b3f08db8f66
[Not reviewed]
default
0 3 0
Drew Perttula - 8 years ago 2017-06-10 07:14:29
drewp@bigasterisk.com
reformat colorpick on timeline
Ignore-this: e6af990f4e2a43441609c2b288010f06
3 files changed with 16 insertions and 11 deletions:
0 comments (0 inline, 0 general)
light9/web/light9-color-picker.html
Show inline comments
 
<link rel="import" href="/lib/polymer/polymer.html">
 
<link rel="import" href="/lib/paper-slider/paper-slider.html">
 

	
 
<dom-module id="light9-color-picker">
 
  <template>
 
    <style>
 
     :host {
 
         position: relative;
 
         display: flex;
 
         align-items: center;
 
         flex-wrap: wrap;
 
     }
 
     #smallRainbowComp, #largeRainbowComp {
 
         display: inline-block;
 
         overflow: hidden;
 
         position: relative;
 
     }
 
     #smallRainbow {
 
         background: url(/colorpick_rainbow_small.png);
 
         width: 150px; 
 
         height: 30px;
 
     }
 
     #largeRainbow {
 
@@ -49,35 +50,41 @@
 
     #largeRainbowComp {
 
         display: none;
 
         position: absolute;
 
         border: 4px solid #545454;
 
         box-shadow: 8px 11px 40px 0px rgba(0, 0, 0, 0.74);
 
         z-index: 10;
 
         left: -50px;
 
         top: -110px;
 
     }
 
     paper-slider {
 
         width: 170px;
 
     }
 
     #vee {
 
         display: flex;
 
         align-items: center;
 
     }
 
    </style>
 
    <div id="smallRainbowComp">
 
      <div id="smallRainbow" on-mouseenter="onEnterSmall"></div>
 
      <div id="smallCrosshair"></div>
 
    </div>
 
    <span>V:</span>
 
    <paper-slider min="0"
 
                  max="255"
 
                  step="1"
 
                  value="{{sliderWriteValue}}"
 
                  immediate-value="{{value}}"></paper-slider>
 
    <span id="vee">
 
      V:
 
      <paper-slider min="0"
 
                    max="255"
 
                    step="1"
 
                    value="{{sliderWriteValue}}"
 
                    immediate-value="{{value}}"></paper-slider>
 
    </span>
 
    <div id="largeRainbowComp">
 
      <div id="largeRainbow"
 
           on-mousemove="onCanvasMove"
 
           on-mouseup="hideLarge"
 
           on-mouseleave="hideLarge"></div>
 
      <div id="largeCrosshair"></div>
 
    </div>
 
  </template>
 
  <script src="/lib/color/one-color.js"></script>
 
  <script>
 
   class RainbowCanvas {
 
       constructor(url, size, onReady) {
light9/web/live/index.html
Show inline comments
 
@@ -168,25 +168,25 @@
 
    <dom-module id="light9-live-device-control">
 
      <template>
 
        <style>
 
         :host {
 
             display: inline-block;
 
         }
 
         .device {
 
             border: 2px solid #151e2d;
 
             margin: 4px;
 
             padding: 1px;
 
             background: #171717;  /* deviceClass gradient added later */
 
             break-inside: avoid-column;
 
             width: 400px;
 
             width: 445px;
 
             
 
         }
 
         .deviceAttr {
 
             border-top: 1px solid #272727;
 
             padding-bottom: 2px;
 
             display: flex;
 
         }
 
         .deviceAttr > span {
 

	
 
         }
 
         .deviceAttr > light9-live-control {
 
             flex-grow: 1;
light9/web/timeline/timeline.coffee
Show inline comments
 
@@ -507,26 +507,26 @@ Polymer
 
  _updateAdjusters: (screenPts, curveWidthCalc, yForV) ->   
 
    if screenPts[screenPts.length - 1].e(1) - screenPts[0].e(1) < 100
 
      @clearAdjusters()
 
    else
 
      @_makeOffsetAdjuster(yForV, curveWidthCalc)
 
      @_makeCurvePointAdjusters(yForV, @worldPts)
 

	
 
  _updateInlineAttrs: (screenPts) ->
 
    leftX = Math.max(2, screenPts[Math.min(1, screenPts.length - 1)].e(1) + 5)
 
    rightX = screenPts[Math.min(2, screenPts.length - 1)].e(1) - 5
 
    if screenPts.length < 3
 
      rightX = leftX + 120
 
    w = 430
 
    h = 80
 
    w = 250
 
    h = 110
 
    wasHidden = @inlineRect?.display == 'none'
 
    @inlineRect = {
 
      left: leftX,
 
      top: @offsetTop + @offsetHeight - h - 5,
 
      width: w,
 
      height: h,
 
      display: if rightX - leftX > w then 'block' else 'none'
 
      }
 
    if wasHidden and @inlineRect.display != 'none'
 
      @async =>
 
        @querySelector('light9-timeline-note-inline-attrs')?.displayed()
 
    
 
@@ -538,27 +538,25 @@ Polymer
 
              @graph.floatValue(pt, @graph.Uri(':value'))])
 
      v.uri = pt
 
      worldPts.push(v)
 
    worldPts.sort((a,b) -> a.e(1) > b.e(1))
 
    return [uris, worldPts]
 

	
 
  _curveWidth: (worldPts) ->
 
    tMin = @graph.floatValue(worldPts[0].uri, @graph.Uri(':time'))
 
    tMax = @graph.floatValue(worldPts[3].uri, @graph.Uri(':time'))
 
    tMax - tMin
 
    
 
  _makeCurvePointAdjusters: (yForV, worldPts) ->
 
    
 
    for pointNum in [0...worldPts.length]
 
      log('wor', worldPts, pointNum)
 
      @_makePointAdjuster(yForV, worldPts, pointNum)
 

	
 
  _makePointAdjuster: (yForV, worldPts, pointNum) ->
 
    U = (x) => @graph.Uri(x)
 

	
 
    adjId = @uri + '/p' + pointNum
 
    @adjusterIds[adjId] = true
 
    @setAdjuster adjId, =>
 
      adj = new AdjustableFloatObject({
 
        graph: @graph
 
        subj: worldPts[pointNum].uri
 
        pred: U(':time')
0 comments (0 inline, 0 general)