2003-10-08 Thomas Fitzsimmons <fitzsim@redhat.com>

* gnu/java/awt/peer/gtk/GtkButtonPeer.java,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c
	(gtkSetFont): Handle BOLD and ITALIC style specifiers.
	(gtkWidgetSetForeground): New method.
	* gnu/java/awt/peer/gtk/GtkComponentPeer.java,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c
	(gtkWidgetSetBackground, gtkWidgetSetForeground): New methods.
	(setBackground, setForeground): Implement.
	* gnu/java/awt/peer/gtk/GtkTextAreaPeer.java,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c
	(gtkSetFont): Handle BOLD and ITALIC style specifiers.
	* gnu/java/awt/peer/gtk/GtkTextFieldPeer.java,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c: Likewise.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c (drawString):
	Position PangoLayout relative to text's baseline.
	* jni/gtk-peer/gtkpeer.h: Define AWT font style constants.

	* java/awt/FlowLayout.java (layoutContainer): Fix offset problem
	for CENTER and RIGHT alignments.

From-SVN: r72246
This commit is contained in:
Thomas Fitzsimmons 2003-10-08 23:38:45 +00:00 committed by Thomas Fitzsimmons
parent 769e49eb03
commit a5586c3865
12 changed files with 160 additions and 26 deletions

View file

@ -51,7 +51,8 @@ public class GtkButtonPeer extends GtkComponentPeer
{
native void create ();
native void gtkSetFont(String xlfd, int size);
native void gtkSetFont(String name, int style, int size);
native void gtkWidgetSetForeground (int red, int green, int blue);
public GtkButtonPeer (Button b)
{
@ -95,6 +96,6 @@ public class GtkButtonPeer extends GtkComponentPeer
public void setFont (Font f)
{
gtkSetFont(f.getName(), f.getSize());
gtkSetFont(f.getName(), f.getStyle(), f.getSize());
}
}

View file

@ -86,6 +86,8 @@ public class GtkComponentPeer extends GtkGenericPeer
native void gtkWidgetGetDimensions(int[] dim);
native void gtkWidgetGetLocationOnScreen(int[] point);
native void gtkWidgetSetCursor (int type);
native void gtkWidgetSetBackground (int red, int green, int blue);
native void gtkWidgetSetForeground (int red, int green, int blue);
void create ()
{
@ -114,12 +116,10 @@ public class GtkComponentPeer extends GtkGenericPeer
connectHooks ();
if (awtComponent.getForeground () == null)
awtComponent.setForeground (getForeground ());
if (awtComponent.getBackground () == null)
awtComponent.setBackground (getBackground ());
// if (c.getFont () == null)
// c.setFont (cp.getFont ());
if (awtComponent.getForeground () != null)
setForeground (awtComponent.getForeground ());
if (awtComponent.getBackground () != null)
setBackground (awtComponent.getBackground ());
if (awtComponent.getFont() != null)
setFont(awtComponent.getFont());
@ -276,7 +276,7 @@ public class GtkComponentPeer extends GtkGenericPeer
public void setBackground (Color c)
{
// System.out.println ("setBackground [UNIMPLEMENTED");
gtkWidgetSetBackground (c.getRed(), c.getGreen(), c.getBlue());
}
native public void setNativeBounds (int x, int y, int width, int height);
@ -314,7 +314,7 @@ public class GtkComponentPeer extends GtkGenericPeer
public void setForeground (Color c)
{
// System.out.println ("setForeground [UNIMPLEMENTED");
gtkWidgetSetForeground (c.getRed(), c.getGreen(), c.getBlue());
}
public Color getForeground ()

View file

@ -48,7 +48,7 @@ public class GtkTextAreaPeer extends GtkTextComponentPeer
{
native void create (int scrollbarVisibility);
native void gtkSetFont(String xlfd, int size);
native void gtkSetFont(String name, int style, int size);
void create ()
{
@ -106,6 +106,6 @@ public class GtkTextAreaPeer extends GtkTextComponentPeer
public void setFont (Font f)
{
gtkSetFont(f.getName(), f.getSize());
gtkSetFont(f.getName(), f.getStyle(), f.getSize());
}
}

View file

@ -55,7 +55,7 @@ public class GtkTextFieldPeer extends GtkTextComponentPeer
native void gtkEntryGetSize (int dims[]);
native void gtkSetFont(String xlfd, int size);
native void gtkSetFont(String name, int style, int size);
public GtkTextFieldPeer (TextField tf)
{
@ -104,7 +104,7 @@ public class GtkTextFieldPeer extends GtkTextComponentPeer
public void setFont (Font f)
{
gtkSetFont(f.getName(), f.getSize());
gtkSetFont(f.getName(), f.getStyle(), f.getSize());
}
public void handleEvent (AWTEvent e)