All Downloads are FREE. Search and download functionalities are using the official Maven repository.

de.sciss.mellite.gui.TimelineProcCanvas.scala Maven / Gradle / Ivy

/*
 *  TimelineProcCanvas.scala
 *  (Mellite)
 *
 *  Copyright (c) 2012-2016 Hanns Holger Rutz. All rights reserved.
 *
 *  This software is published under the GNU General Public License v3+
 *
 *
 *  For further information, please contact Hanns Holger Rutz at
 *  [email protected]
 */

package de.sciss.mellite
package gui

import de.sciss.audiowidgets.TimelineCanvas
import de.sciss.lucre.stm.Sys
import de.sciss.span.Span
import de.sciss.synth.proc.Timeline

trait TimelineProcCanvas[S <: Sys[S]] extends TimelineCanvas {
  def timeline(implicit tx: S#Tx): Timeline[S]

  def selectionModel: TimelineObjView.SelectionModel[S]

  def intersect(span: Span): Iterator[TimelineObjView[S]]

  def findRegion(frame: Long, hitTrack: Int): Option[TimelineObjView[S]]

  def findRegions(r: TrackTool.Rectangular): Iterator[TimelineObjView[S]]

  def screenToTrack(y    : Int): Int
  def trackToScreen(track: Int): Int

  def trackTools: TrackTools[S]
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy