package com.framsticks.gui; import com.framsticks.params.AccessInterface; import javax.swing.*; import java.awt.*; import java.util.List; /** * Author: Piotr Ĺšniegowski */ @SuppressWarnings("serial") public class MultiPanel extends Panel { protected final List panels; protected final JTabbedPane tabbedPane; public MultiPanel(Panel.Parameters parameters, List panels) { super(parameters); this.panels = panels; tabbedPane = new JTabbedPane(); for (Panel p : panels) { assert p.getClassName().equals(getClassName()); assert p.getTreeAtFrame() == getTreeAtFrame(); tabbedPane.add(p.getTitle(), p); } this.setLayout(new BorderLayout()); this.add(tabbedPane, BorderLayout.CENTER); } @Override public void pullValuesFromLocalToUser(AccessInterface access) { for (Panel p : panels) { p.pullValuesFromLocalToUser(access); } } @Override public String getTitle() { return className; } @Override public void setCurrentTreeNode(TreeNode currentTreeNode) { super.setCurrentTreeNode(currentTreeNode); for (Panel p : panels) { p.setCurrentTreeNode(currentTreeNode); } } }