package ij.gui;
import ij.IJ;
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
/** This class, based on Joachim Walter's Image5D package, adds "c", "z" labels
and play-pause icons (T) to the stack and hyperstacks dimension sliders.
* @author Joachim Walter
*/
public class ScrollbarWithLabel extends Panel implements Adjustable, AdjustmentListener {
Scrollbar bar;
private Icon icon;
private StackWindow stackWindow;
transient AdjustmentListener adjustmentListener;
public ScrollbarWithLabel() {
}
public ScrollbarWithLabel(StackWindow stackWindow, int value, int visible, int minimum, int maximum, char label) {
super(new BorderLayout(2, 0));
this.stackWindow = stackWindow;
bar = new Scrollbar(Scrollbar.HORIZONTAL, value, visible, minimum, maximum);
icon = new Icon(label);
add(icon, BorderLayout.WEST);
add(bar, BorderLayout.CENTER);
bar.addAdjustmentListener(this);
addKeyListener(IJ.getInstance());
}
/* (non-Javadoc)
* @see java.awt.Component#getPreferredSize()
*/
public Dimension getPreferredSize() {
Dimension dim = new Dimension(0,0);
int width = bar.getPreferredSize().width;
Dimension minSize = getMinimumSize();
if (width
Ads help maintain this website.