/******************************************************************************* * Copyright (c) 2016 Weasis Team and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Nicolas Roduit - initial API and implementation *******************************************************************************/ package org.weasis.core.ui.editor; import java.util.Collections; import java.util.List; import javax.swing.Action; import javax.swing.JMenu; import org.weasis.core.api.media.data.MediaElement; import org.weasis.core.api.media.data.MediaSeries; import org.weasis.core.api.media.data.MediaSeriesGroup; import org.weasis.core.ui.docking.DockableTool; import org.weasis.core.ui.util.Toolbar; import org.weasis.core.ui.util.WtoolBar; public interface SeriesViewer<E extends MediaElement> { String getPluginName(); void close(); List<MediaSeries<E>> getOpenSeries(); void addSeries(MediaSeries<E> series); void removeSeries(MediaSeries<E> series); JMenu fillSelectedPluginMenu(JMenu menuRoot); List<Toolbar> getToolBar(); default WtoolBar getStatusBar() { return null; } List<DockableTool> getToolPanel(); void setSelected(boolean selected); MediaSeriesGroup getGroupID(); String getDockableUID(); default List<Action> getExportActions() { return Collections.emptyList(); } default List<Action> getPrintActions() { return Collections.emptyList(); } }