1 /* Copyright 2009-2010 Yorba Foundation
3 * This software is licensed under the GNU Lesser General Public License
4 * (version 2.1 or later). See the COPYING file in this distribution.
7 public interface TrackView : Gtk.Widget {
8 public signal void clip_view_added(ClipView clip_view);
9 public abstract void move_to_top(ClipView clip_view);
10 public abstract void resize();
11 public abstract Model.Track get_track();
12 public abstract int get_track_height();
13 public abstract Gtk.Widget? find_child(double x, double y);
14 public abstract void select_all();
17 public class ClassFactory {
18 static ClassFactory class_factory = null;
19 static TransportDelegate transport_delegate = null;
21 public static ClassFactory get_class_factory() {
25 public virtual TrackView get_track_view(Model.Track track, TimeLine timeline) {
26 assert(transport_delegate != null);
27 return new TrackViewConcrete(transport_delegate, track, timeline);
30 public static void set_class_factory(ClassFactory class_factory) {
31 ClassFactory.class_factory = class_factory;
34 public static void set_transport_delegate(TransportDelegate transport_delegate) {
35 ClassFactory.transport_delegate = transport_delegate;