de.sciss.mellite.ArtifactLocationView.scala Maven / Gradle / Ivy
/*
* ArtifactLocationView.scala
* (Mellite)
*
* Copyright (c) 2012-2023 Hanns Holger Rutz. All rights reserved.
*
* This software is published under the GNU Affero General Public License v3+
*
*
* For further information, please contact Hanns Holger Rutz at
* [email protected]
*/
package de.sciss.mellite
import de.sciss.lucre.edit.UndoManager
import de.sciss.lucre.swing.View
import de.sciss.lucre.synth.Txn
import de.sciss.lucre.{ArtifactLocation, Txn => LTxn}
import de.sciss.mellite.impl.artifact.{ArtifactLocationViewImpl => Impl}
import de.sciss.proc.Universe
object ArtifactLocationView {
def apply[T <: Txn[T]](obj: ArtifactLocation[T])
(implicit tx: T, universe: Universe[T],
undo: UndoManager[T]): ArtifactLocationView[T] =
Impl(obj)
}
trait ArtifactLocationView[T <: LTxn[T]] extends UniverseObjView[T] with View.Editable[T] {
override def obj(implicit tx: T): ArtifactLocation[T]
}