1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
|
package ij.plugin.frame;
import java.awt.*;
import java.awt.event.*;
import ij.*;
import ij.plugin.*;
/** This is a closeable window that plugins can extend. */
public class PlugInFrame extends Frame implements PlugIn, WindowListener, FocusListener {
String title;
public PlugInFrame(String title) {
super(title);
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
this.title = title;
ImageJ ij = IJ.getInstance();
addWindowListener(this);
addFocusListener(this);
if (IJ.isLinux()) setBackground(ImageJ.backgroundColor);
if (ij!=null && !IJ.isMacOSX()) {
Image img = ij.getIconImage();
if (img!=null)
try {setIconImage(img);} catch (Exception e) {}
}
}
public void run(String arg) {
}
public void windowClosing(WindowEvent e) {
if (e.getSource()==this) {
close();
if (Recorder.record)
Recorder.record("run", "Close");
}
}
/** Closes this window. */
public void close() {
//setVisible(false);
dispose();
WindowManager.removeWindow(this);
}
public void windowActivated(WindowEvent e) {
if (Prefs.setIJMenuBar) {
this.setMenuBar(Menus.getMenuBar());
Menus.setMenuBarCount++;
}
WindowManager.setWindow(this);
}
public void focusGained(FocusEvent e) {
WindowManager.setWindow(this);
}
public void windowOpened(WindowEvent e) {}
public void windowClosed(WindowEvent e) {}
public void windowIconified(WindowEvent e) {}
public void windowDeiconified(WindowEvent e) {}
public void windowDeactivated(WindowEvent e) {}
public void focusLost(FocusEvent e) {}
}
|