44 |
import java.awt.event.PaintEvent; |
import java.awt.event.PaintEvent; |
45 |
import java.awt.peer.DialogPeer; |
import java.awt.peer.DialogPeer; |
46 |
|
|
|
import javax.swing.JDialog; |
|
|
import javax.swing.JPopupMenu; |
|
|
import javax.swing.JToolTip; |
|
|
|
|
47 |
public class GtkDialogPeer extends GtkWindowPeer |
public class GtkDialogPeer extends GtkWindowPeer |
48 |
implements DialogPeer |
implements DialogPeer |
49 |
{ |
{ |
83 |
void create () |
void create () |
84 |
{ |
{ |
85 |
Dialog dialog = (Dialog) awtComponent; |
Dialog dialog = (Dialog) awtComponent; |
|
int type = GDK_WINDOW_TYPE_HINT_DIALOG; |
|
|
|
|
|
if (dialog instanceof JDialog) |
|
|
{ |
|
|
Class heavyWeightClass; |
|
|
try |
|
|
{ |
|
|
heavyWeightClass = Class.forName("javax.swing.Popup$JWindowPopup"); |
|
|
} |
|
|
catch (ClassNotFoundException e) |
|
|
{ |
|
|
throw new AssertionError(e); |
|
|
} |
|
|
|
|
|
if (dialog.getClass() == heavyWeightClass |
|
|
|| ((JDialog) dialog).getContentPane() instanceof JToolTip) |
|
|
type = GDK_WINDOW_TYPE_HINT_MENU; |
|
|
} |
|
86 |
|
|
87 |
// Create a decorated dialog window. |
// Create a decorated dialog window. |
88 |
create (type, !((Dialog) awtComponent).isUndecorated ()); |
create (GDK_WINDOW_TYPE_HINT_DIALOG, !((Dialog) awtComponent).isUndecorated ()); |
89 |
|
|
90 |
gtkWindowSetModal (dialog.isModal ()); |
gtkWindowSetModal (dialog.isModal ()); |
91 |
setTitle (dialog.getTitle ()); |
setTitle (dialog.getTitle ()); |