aboutsummaryrefslogtreecommitdiff
path: root/libjava
diff options
context:
space:
mode:
authorfnasser <fnasser@138bc75d-0d04-0410-961f-82ee72b054a4>2004-01-13 13:09:31 +0000
committerfnasser <fnasser@138bc75d-0d04-0410-961f-82ee72b054a4>2004-01-13 13:09:31 +0000
commit44ea1c0d7cb2f6efaf60e1a6ea7299258b688691 (patch)
treec4db13fdec0f1fbcabc413740320b1e335769768 /libjava
parent0914a918f13c3934753e8a1721e660fd2e0cb551 (diff)
* gnu/java/awt/peer/gtk/TestAWT.java: Fix test program so that it does
not show modal dialogs twice and so that it allows showing a modal dialog from another modal dialog. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@75803 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava')
-rw-r--r--libjava/ChangeLog6
-rw-r--r--libjava/gnu/java/awt/peer/gtk/TestAWT.java39
2 files changed, 41 insertions, 4 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index 6252810397b..eb423b3e012 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,5 +1,11 @@
2004-01-12 Fernando Nasser <fnasser@redhat.com>
+ * gnu/java/awt/peer/gtk/TestAWT.java: Fix test program so that it does
+ not show modal dialogs twice and so that it allows showing a modal
+ dialog from another modal dialog.
+
+2004-01-12 Fernando Nasser <fnasser@redhat.com>
+
* java/awt/Dialog.java (show): Enable blocking for all modal dialogs
and run secondary dispatch thread to process event queue while this
thread is blocked.
diff --git a/libjava/gnu/java/awt/peer/gtk/TestAWT.java b/libjava/gnu/java/awt/peer/gtk/TestAWT.java
index 48cdce1a1fe..36e4416d3df 100644
--- a/libjava/gnu/java/awt/peer/gtk/TestAWT.java
+++ b/libjava/gnu/java/awt/peer/gtk/TestAWT.java
@@ -184,8 +184,16 @@ class MainWindow extends PrettyFrame implements ActionListener
w.dispose ();
else
{
- w.setVisible (true);
- w.show();
+ if (w instanceof Dialog)
+ {
+ System.out.println ("Will 'show'");
+ w.show();
+ System.out.println ("Has shown");
+ }
+ else
+ {
+ w.setVisible (true);
+ }
}
}
}
@@ -250,11 +258,14 @@ class ButtonsWindow extends SubFrame implements ActionListener
class DialogWindow extends Dialog implements SubWindow
{
Label text;
+ Frame parent;
boolean initted = false;
public DialogWindow (Frame f)
{
super (f, true);
+
+ this.parent = f;
}
public void setVisible (boolean visible)
@@ -264,6 +275,13 @@ class DialogWindow extends Dialog implements SubWindow
super.setVisible (visible);
}
+ public void show ()
+ {
+ if (!initted)
+ init();
+ super.show ();
+ }
+
public void init ()
{
text = new Label ("Dialog Test");
@@ -282,7 +300,7 @@ class DialogWindow extends Dialog implements SubWindow
}
});
- p.setLayout (new GridLayout (1, 2));
+ p.setLayout (new GridLayout (1, 3));
((GridLayout) p.getLayout ()).setHgap (5);
((GridLayout) p.getLayout ()).setVgap (5);
p.add (cb);
@@ -300,10 +318,23 @@ class DialogWindow extends Dialog implements SubWindow
doLayout();
}
});
+
+ Button subdlg = new Button ("SubDialog");
+ p.add (subdlg);
+
+ subdlg.addActionListener(new ActionListener () {
+ public void actionPerformed (ActionEvent e)
+ {
+ DialogWindow sw = new DialogWindow (parent);
+ System.out.println ("Will show modal sub dialog");
+ sw.show ();
+ System.out.println ("Has shown modal sub dialog");
+ }
+ });
add (p, "South");
setTitle ("Dialog");
- setSize (130, 70);
+ setSize (240, 120);
}
}