/** * Constructs a ClipControl object. This is an abstract class that cannot be instantiated * directly. * * @param videoClip the video clip */ protected ClipControl(VideoClip videoClip) { clip = videoClip; video = clip.getVideo(); support = new SwingPropertyChangeSupport(this); }
/** * Returns an instance of ClipControl. * * @param clip the video clip * @return an appropriate clip control */ public static ClipControl getControl(VideoClip clip) { Video video = clip.getVideo(); if (playAllSteps || video == null || video instanceof ImageVideo) return new StepperClipControl(clip); return new VideoClipControl(clip); }