summaryrefslogtreecommitdiff
path: root/javax/swing/JDialog.java
diff options
context:
space:
mode:
authorRonald Veldema <rveldema@cs.vu.nl>2002-03-11 15:48:06 +0000
committerRonald Veldema <rveldema@cs.vu.nl>2002-03-11 15:48:06 +0000
commit5158e5cd020ca88753de8793a40dcda66f3ea8ae (patch)
treee8ff44926abd1e1fd9f058139dc1476c54d24f9c /javax/swing/JDialog.java
parenteed4707c499f072d7e36d8499638b859a370fc57 (diff)
downloadclasspath-5158e5cd020ca88753de8793a40dcda66f3ea8ae.tar.gz
Added my embryonic javax.swing implementation,
since there are no makefiles for it yet nobody should notice its addition (it shouldn't break anything by adding it this early) R.
Diffstat (limited to 'javax/swing/JDialog.java')
-rw-r--r--javax/swing/JDialog.java219
1 files changed, 219 insertions, 0 deletions
diff --git a/javax/swing/JDialog.java b/javax/swing/JDialog.java
new file mode 100644
index 000000000..e2e6b171e
--- /dev/null
+++ b/javax/swing/JDialog.java
@@ -0,0 +1,219 @@
+package javax.swing;
+
+import java.awt.*;
+import java.awt.event.*;
+
+
+
+public class JDialog extends Dialog implements Accessible
+{
+ public final static int HIDE_ON_CLOSE = 0;
+ public final static int DISPOSE_ON_CLOSE = 1;
+ public final static int DO_NOTHING_ON_CLOSE = 2;
+
+ protected AccessibleContext accessibleContext;
+
+ private int close_action = HIDE_ON_CLOSE;
+
+ /***************************************************
+ *
+ *
+ * constructors
+ *
+ *
+ *************/
+
+ JDialog(Frame owner)
+ {
+ this(owner, "dialog");
+ }
+
+ JDialog(Frame owner,
+ String s)
+ {
+ this(owner, s, true);
+ }
+
+ JDialog(Frame owner,
+ String s,
+ boolean modeld)
+ {
+ super(owner, s, modeld);
+ }
+
+ JDialog(Frame owner,
+ // String s,
+ boolean modeld)
+ {
+ super(owner, "JDialog", modeld);
+ }
+ JDialog(Dialog owner)
+ {
+ this(owner, "dialog");
+ }
+
+ JDialog(Dialog owner,
+ String s)
+ {
+ this(owner, s, true);
+ }
+
+ JDialog(Dialog owner,
+ String s,
+ boolean modeld)
+ {
+ super(owner, s, modeld);
+ }
+
+
+ /***************************************************
+ *
+ *
+ * methods, this part is shared with JDialog, JFrame
+ *
+ *
+ *************/
+
+
+ private boolean checking;
+ protected JRootPane rootPane;
+
+ void setLocationRelativeTo(Component c)
+ {
+ }
+
+
+ protected void frameInit()
+ {
+ super.setLayout(new BorderLayout(1, 1));
+ getRootPane(); // will do set/create
+ }
+
+ public Dimension getPreferredSize()
+ {
+ Dimension d = super.getPreferredSize();
+ return d;
+ }
+
+ JMenuBar getJMenuBar()
+ { return getRootPane().getJMenuBar(); }
+
+ void setJMenuBar(JMenuBar menubar)
+ { getRootPane().setJMenuBar(menubar); }
+
+
+ public void setLayout(LayoutManager manager)
+ { super.setLayout(manager); }
+
+ void setLayeredPane(JLayeredPane layeredPane)
+ { getRootPane().setLayeredPane(layeredPane); }
+
+ JLayeredPane getLayeredPane()
+ { return getRootPane().getLayeredPane(); }
+
+ JRootPane getRootPane()
+ {
+ if (rootPane == null)
+ setRootPane(createRootPane());
+ return rootPane;
+ }
+
+ void setRootPane(JRootPane root)
+ {
+ if (rootPane != null)
+ remove(rootPane);
+
+ rootPane = root;
+ add(rootPane, BorderLayout.CENTER);
+ }
+
+ JRootPane createRootPane()
+ { return new JRootPane(); }
+
+ Container getContentPane()
+ { return getRootPane().getContentPane(); }
+
+ void setContentPane(Container contentPane)
+ { getRootPane().setContentPane(contentPane); }
+
+ Component getGlassPane()
+ { return getRootPane().getGlassPane(); }
+
+ void setGlassPane(Component glassPane)
+ { getRootPane().setGlassPane(glassPane); }
+
+
+ protected void addImpl(Component comp, Object constraints, int index)
+ { super.addImpl(comp, constraints, index); }
+
+
+ public void remove(Component comp)
+ { getContentPane().remove(comp); }
+
+ protected boolean isRootPaneCheckingEnabled()
+ { return checking; }
+
+
+ protected void setRootPaneCheckingEnabled(boolean enabled)
+ { checking = enabled; }
+
+
+ public void update(Graphics g)
+ { paint(g); }
+
+ protected void processKeyEvent(KeyEvent e)
+ { super.processKeyEvent(e); }
+
+ /////////////////////////////////////////////////////////////////////////////////
+
+
+ protected void processWindowEvent(WindowEvent e)
+ {
+ // System.out.println("PROCESS_WIN_EV-1: " + e);
+ super.processWindowEvent(e);
+ // System.out.println("PROCESS_WIN_EV-2: " + e);
+ switch (e.getID())
+ {
+ case WindowEvent.WINDOW_CLOSING:
+ {
+ switch(close_action)
+ {
+ case DISPOSE_ON_CLOSE:
+ {
+ System.out.println("user requested dispose on close");
+ dispose();
+ break;
+ }
+ case HIDE_ON_CLOSE:
+ {
+ setVisible(false);
+ break;
+ }
+ case DO_NOTHING_ON_CLOSE:
+ break;
+ }
+ break;
+ }
+
+ case WindowEvent.WINDOW_CLOSED:
+ case WindowEvent.WINDOW_OPENED:
+ case WindowEvent.WINDOW_ICONIFIED:
+ case WindowEvent.WINDOW_DEICONIFIED:
+ case WindowEvent.WINDOW_ACTIVATED:
+ case WindowEvent.WINDOW_DEACTIVATED:
+ break;
+ }
+ }
+
+
+ void setDefaultCloseOperation(int operation)
+ { close_action = operation; }
+
+ protected String paramString()
+ { return "JDialog"; }
+
+ public AccessibleContext getAccessibleContext()
+ {
+ return null;
+ }
+}