*/
package jalview.gui;
-import jalview.bin.Cache;
-import jalview.renderer.OverviewRenderer;
-import jalview.util.MessageManager;
-import jalview.util.Platform;
-import jalview.viewmodel.OverviewDimensions;
-import jalview.viewmodel.OverviewDimensionsHideHidden;
-import jalview.viewmodel.OverviewDimensionsShowHidden;
-import jalview.viewmodel.ViewportListenerI;
-
import java.awt.BorderLayout;
import java.awt.Cursor;
import java.awt.Dimension;
+import java.awt.Rectangle;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ComponentAdapter;
import javax.swing.JPopupMenu;
import javax.swing.SwingUtilities;
+import jalview.renderer.OverviewRenderer;
+import jalview.util.MessageManager;
+import jalview.util.Platform;
+import jalview.viewmodel.OverviewDimensions;
+import jalview.viewmodel.OverviewDimensionsHideHidden;
+import jalview.viewmodel.OverviewDimensionsShowHidden;
+import jalview.viewmodel.ViewportListenerI;
+
/**
* Panel displaying an overview of the full alignment, with an interactive box
* representing the viewport onto the alignment.
private AlignmentPanel ap;
+ private JInternalFrame internalFrame;
+
protected JCheckBoxMenuItem displayToggle;
protected boolean showHidden = true;
*
* @param alPanel
* The alignment panel which is shown in the overview panel
+ * @param frame
+ * @param isShowHidden
+ * TODO
*/
- public OverviewPanel(AlignmentPanel alPanel)
+ public OverviewPanel(AlignmentPanel alPanel, JInternalFrame frame,
+ boolean isShowHidden)
{
this.av = alPanel.av;
this.ap = alPanel;
+ this.internalFrame = frame;
- showHidden = Cache.getDefault(Preferences.SHOW_OV_HIDDEN_AT_START,
- false);
+ showHidden = isShowHidden;
if (showHidden)
{
od = new OverviewDimensionsShowHidden(av.getRanges(),
oviewCanvas = null;
ap = null;
od = null;
+ internalFrame = null;
}
}
+
+ public boolean isShowHiddenRegions()
+ {
+ return showHidden;
+ }
+
+ public OverviewCanvas getCanvas()
+ {
+ return oviewCanvas;
+ }
+
+ /**
+ * Sets the title of the enclosing frame
+ *
+ * @param title
+ */
+ public void setTitle(String title)
+ {
+ internalFrame.setTitle(title);
+ }
+
+ /**
+ * Returns the title of the enclosing frame
+ *
+ * @return title
+ */
+ public String getTitle()
+ {
+ return internalFrame.getTitle();
+ }
+
+ /**
+ * Sets the bounds of the frame holding the Overview panel
+ *
+ * @param xpos
+ * @param ypos
+ * @param width
+ * @param height
+ */
+ public void setFrameBounds(int xpos, int ypos, int width, int height)
+ {
+ internalFrame.setBounds(xpos, ypos, width, height);
+ }
+
+ /**
+ * Returns the bounds of the enclosing frame
+ *
+ * @return
+ */
+ public Rectangle getFrameBounds()
+ {
+ return internalFrame.getBounds();
+ }
+
+ /**
+ * Closes the frame containing the overview panel
+ */
+ public void close()
+ {
+ internalFrame.dispose();
+ }
}