Commit Graph

86 Commits

Author SHA1 Message Date
Kim Ho 85fa3bdee4 gnu_java_awt_peer_gtk_GtkTextAreaPeer.c (create): Disable wrapping if TextArea has horizontal scroll bars.
2003-12-01  Kim Ho <kho@redhat.com>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c (create):
	Disable wrapping if TextArea has horizontal scroll bars.

From-SVN: r74141
2003-12-02 01:01:07 +00:00
Thomas Fitzsimmons bb9cfd0062 2003-12-01 Thomas Fitzsimmons <fitzsim@redhat.com>
* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(awt_event_handler): Hard-code inset values.

From-SVN: r74136
2003-12-01 23:27:06 +00:00
Thomas Fitzsimmons bebae71041 GdkFontMetrics.java (GdkFontMetrics): Pass font name, not XLFD, to initState.
2003-12-01  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GdkFontMetrics.java (GdkFontMetrics):
	Pass font name, not XLFD, to initState.
	(stringWidth(String, int, String)): New method.
	(stringWidth(String)): Call new stringWidth.
	(getLeading): Always return 0.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontMetrics.c
	(initState): New Pango implementation.
	(stringWidth): Likewise.

From-SVN: r74133
2003-12-01 23:12:09 +00:00
Olga Rodimina ea91ed0989 2003-12-01 Olga Rodimina <rodimina@redhat.com>
* java/awt/TextComponent.java:
	(getSelectionStart): Updated javadocs.
	(getSelectionEnd): Ditto.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer:
	(getSelectionStart): Changed to return caret position if no
	text is selected
	(getSelectionEnd): Ditto.

From-SVN: r74124
2003-12-01 20:23:50 +00:00
Thomas Fitzsimmons 24fb8b78f4 2003-12-01 Thomas Fitzsimmons <fitzsim@redhat.com>
* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkPixbufDecoder.c
	(closed): Mark loader parameter as unused.

From-SVN: r74115
2003-12-01 18:05:32 +00:00
Graydon Hoare 146a1ecb87 GdkClasspathFontPeerMetrics.java: New file.
2003-11-17  Graydon Hoare  <graydon@redhat.com>

	* gnu/java/awt/peer/gtk/GdkClasspathFontPeerMetrics.java: New file.
	* gnu/java/awt/peer/gtk/GdkClasspathFontPeer.java
	(GdkFontLineMetrics): New inner class.
	(getLineMetrics): Return new GdkFontLineMetrics.
	(getFontMetrics): Return new GdkClasspathFontPeerMetrics.
	(layoutGlyphVector): Create GdkGlyphVector.
	* gnu/java/awt/peer/gtk/GdkGraphics2D.java (stateStack): New member.
	(GdkGraphics2D): Initialize state via mathod calls.
	(cairoSetMatrix, cairoShowGlyphs): Simplify native calls.
	(cairoTranslate, cairoScale, cairoRotate): Remove.
	(various methods): use setTransform for special transform cases.
	(DrawState): New inner class.
	(stateSave): New method.
	(stateRestore): New method.
	(various methods): use stateSave, stateRestore.
	(getClipInDevSpace): New method.
	(clip, clipRect, setClip, getClip, getClipBounds):
	Follow spec more closely.
	(getTransform): Return clone of transform.
	(setStroke): Set linewidth to passed width / 2.0.
	(setPaintMode): Set SrcOver rather than Xor.
	(setColor): Set paint to passed color.
	(drawRaster, drawImage, PainterThread, drawPixels): Take affine
	transform from image to user space.
	(drawRenderedImage, drawRenderableImage): Implement.
	(getFontRenderContext, getFontMetrics, drawString, getFont):
	Implement
	(drawArc, drawOval, drawRoundRect, fillArc, fillOval, fillRoundRect):
	Implement.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c:
	Match changes to java side.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkClasspathFontPeer.c:
	Release resources.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGlyphVector.c:
	Don't use pango for metrics.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkClasspathFontPeerMetrics.c:
	New file.

From-SVN: r73776
2003-11-20 22:44:01 +00:00
Tom Fitzsimmons 94f773991e gnu_java_awt_peer_gtk_GtkLabelPeer.c (setAlignment): Rename to nativeSetAlignment.
2003-11-12  Tom Fitzsimmons  <fitzsim@redhat.com>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.c (setAlignment):
	Rename to nativeSetAlignment.

From-SVN: r73500
2003-11-12 17:38:22 +00:00
Thomas Fitzsimmons 009ed5cc5c GtkLabelPeer.java (create()): Call new create.
2003-11-11  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkLabelPeer.java (create()): Call new create.
	(create(String, float)): New method.
	(setText): Make native.
	(nativeSetAlignment): New method.
	(setAlignment): Call nativeSetAlignment.
	(getArgs): Remove method.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c
	(find_fg_color_widget, find_bg_color_widget): New functions.
	(gtkWidgetSetForeground): Call find_fg_color_widget.
	(gtkWidgetSetBackground): Call find_bg_color_widget.  Modify active and
	prelight colors.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.c (create): Wrap label
	widget in event box.
	(setText, setAlignment): Implement new native methods.

From-SVN: r73453
2003-11-11 17:04:47 +00:00
Thomas Fitzsimmons 54ab330316 gnu_java_awt_peer_gtk_GtkTextAreaPeer.c (create): Turn on word wrapping.
2003-10-30  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c (create): Turn on
	word wrapping.

From-SVN: r73093
2003-10-30 17:37:33 +00:00
Thomas Fitzsimmons 12d104a2b9 gnu_java_awt_peer_gtk_GtkListPeer.c (getSize): Return scrolled window's size request.
2003-10-29  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c (getSize): Return
	scrolled window's size request.

From-SVN: r73075
2003-10-30 01:49:39 +00:00
Graydon Hoare c4bcf1418f ClasspathToolkit.java: New abstract class.
2003-10-14  Graydon Hoare  <graydon@redhat.com>

	* gnu/java/awt/ClasspathToolkit.java: New abstract class.
	* gnu/java/awt/peer/ClasspathFontPeer.java: New abstract class.
	* gnu/java/awt/peer/gtk/GdkClasspathFontPeer.java,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GdkClasspathFontPeer.c:
	New concrete implementation of ClasspathFontPeer, with native part.
	* gnu/java/awt/peer/gtk/GdkGlyphVector.java,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGlyphVector.c:
	New class, with native part.
	* gnu/java/awt/peer/gtk/GdkGraphics2D.java,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c:
	implement setFont, cairoSetFont, drawGlyphVector, cairoShowGlyphs.

From-SVN: r72931
2003-10-25 18:41:45 +00:00
Thomas Fitzsimmons f2d0e05d4e GtkDialogPeer.java (handleEvent): Remove method.
2003-10-24  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkDialogPeer.java (handleEvent):
	Remove method.
	* gnu/java/awt/peer/gtk/GtkWindowPeer.java (postWindowEvent):
	New method.
	* java/awt/Window.java (Window(Window,GraphicsConfiguration),
	show, hide, dispose, getOwnedWindows): Synchronize on tree lock.
	(dispose): Post WINDOW_CLOSED event.
	(addWindowFocusListener, addWindowStateListener): Assign result
	of multicaster add back to window listener.
	(removeWindowFocusListener, removeWindowStateListener): Assign
	result of multicaster remove back to window listener.
	(dispatchEventImpl): Add null checks for focus and state
	listeners.
	(processWindowEvent): Handle case where windowListener is null
	but state or focus listeners exist.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c: Add JNI
	glue for postWindowEvent.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c
	(window_delete_cb, window_destroy_cb, window_show_cb,
	window_focus_in_cb, window_focus_out_cb, window_window_state_cb,
	window_get_new_state): New functions.
	* jni/gtk-peer/gtkpeer.h: Define window event and frame state
	macros.  Declare postWindowEventID.

From-SVN: r72906
2003-10-24 19:40:30 +00:00
Thomas Fitzsimmons 23a555b077 GtkButtonPeer.java (handleEvent): Remove modality check.
2003-10-08  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkButtonPeer.java (handleEvent): Remove
	modality check.
	* gnu/java/awt/peer/gtk/GtkDialogPeer.java (initializeInsets):
	Initialize insets to use latest insets.
	* gnu/java/awt/peer/gtk/GtkFramePeer.java: Likewise.
	* gnu/java/awt/peer/gtk/GtkWindowPeer.java (latestInsets): New
	field.
	(postConfigureEvent): Update latestInsets field when insets
	change.  Remove call to setSize.  Move validate call outside of
	if blocks.
	(setVisible): Call setBounds before showing window.
	(nativeSetVisible): New native method.
	* java/awt/Window.java (show): Show visible owned windows.
	(hide): Hide visible owned windows.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(awt_event_handler): Implement modality using GTK grabs.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c
	(global_gtk_window_group): New global variable.
	(gtkInit): Initialize global_gtk_window_group.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c (create):
	Clamp width and height values to at least 1.  Add this window to
	the global GTK window group.
	(setVisible): Rename to nativeSetVisible.
	(setup_window): Remove function.
	(setSize): Clamp width and height values to at least 1.
	(nativeSetBounds): Likewise.
	(gdk_window_get_root_geometry): Remove function.
	* jni/gtk-peer/gtkpeer.h: Remove gdk_window_get_root_geometry
	and setup_window declarations.  Declare global_gtk_window_group.

From-SVN: r72252
2003-10-09 00:26:29 +00:00
Thomas Fitzsimmons a5586c3865 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
2003-10-08 23:38:45 +00:00
Thomas Fitzsimmons ce7a72c80d GtkMenuItemPeer.java (setEnabled): Stub out.
2003-10-08  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkMenuItemPeer.java (setEnabled): Stub
	out.
	* jni/classpath/jcl.c [!__GNUC__]: Elide __attribute__.
	(JCL_free): Attach "unused" attribute to env parameter.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkClipboard.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImagePainter.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c,
	jni/gtk-peer/gthread-jni.c: Attach "unused" attribute to unused
	parameters.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkClipboard.c:
	(initNativeState): Pass 0 as info argument to
	gtk_selection_add_target.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c:
	(setVisible, gtkFixedNew, gtkFixedPut, gtkFixedMove): Remove
	unused method implementations.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(awt_event_handler): Add break statement after default label.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImagePainter.c
	(drawPixels): Remove unused variable i.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.c
	(setEnabled): Remove method implementation.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuPeer.c
	(accel_attach): Call _gtk_accel_group_attach with G_OBJECT
	argument.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPanelPeer.c (sr): Remove
	unused function.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.c
	(menu_pos): Assign TRUE to push_in.
	(setupAccelGroup): Call _gtk_accel_group_attach with G_OBJECT
	argument.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.c
	(create): Remove unused variable layout.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c (create):
	Pass window_widget, rather than window, to
	gtk_widget_set_size_request.
	* jni/gtk-peer/gthread-jni.c (g_thread_jni_functions): Fill out
	structure initialization with NULL values.
	* jni/gtk-peer/gtkpeer.h [!__GNUC__]: Elide __attribute__.

From-SVN: r72231
2003-10-08 15:49:33 +00:00
Thomas Fitzsimmons ff4cc28b64 GtkTextAreaPeer.java (gtkTextGetSize): Remove unused parameters.
2003-10-07  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkTextAreaPeer.java (gtkTextGetSize):
	Remove unused parameters.
	* gnu/java/awt/peer/gtk/GtkTextFieldPeer.java (gtkEntryGetSize):
	Likewise.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(keyevent_state_to_awt_mods): Export function.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c
	(getCaretPosition): Fix TextArea case.
	(textcomponent_commit_cb): Get exact event time and modifier
	state.
	* jni/gtk-peer/gtkpeer.h: Declare keyevent_state_to_awt_mods.

From-SVN: r72202
2003-10-07 21:33:29 +00:00
Thomas Fitzsimmons b59b508138 GtkComponentPeer.java (insets): New field.
2003-10-02  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkComponentPeer.java (insets): New
	field.
	(initializeInsets): New method.
	(GtkComponentPeer): Call initializeInsets.  Call setCursor and
	setBounds unconditionally.
	(setBounds): Convert coordinates if parent is a Window.
	* gnu/java/awt/peer/gtk/GtkContainerPeer.java (insets): Move
	field to GtkComponentPeer.
	(GtkContainerPeer): Don't initialize insets.
	* gnu/java/awt/peer/gtk/GtkDialogPeer.java (initializeInsets):
	New method.
	(create): Call new GtkWindowPeer create method.
	* gnu/java/awt/peer/gtk/GtkFramePeer.java (initializeInsets):
	New method.
	(create): Call new GtkWindowPeer create method.
	(setBounds): Remove method.
	(postConfigureEvent): Likewise.
	* gnu/java/awt/peer/gtk/GtkWindowPeer.java: Replace GTK window
	type constants with GDK window type constants.
	(create(int,boolean,int,int,GtkWindowPeer)): New method.
	(create(int,boolean)): Likewise.
	(create()): Call create(int,boolean).
	(nativeSetBounds): New native method declaration.
	(setBounds): Call native method declaration.
	(setSize): New native method declaration.
	(setBoundsCallback): Likewise.
	(postConfigureEvent): Handle change in insets.  Call setSize and
	setBoundsCallback methods.
	* java/awt/Window.java (Window): Set visible to false.
	(setBoundsCallback): New method.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c
	(gtkWidgetGetLocationOnScreen): If this component is not a
	container, adjust the location returned based on the peer's
	allocation.
	(set(String,boolean)): Revert change from 2003-09-19.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(awt_event_handler): Fix inset calculation.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c: Add JNI
	glue for Window.setBoundsCallback.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c (create):
	Set up stacking order, window decorations and window manager
	hints.
	(setBoundsCallback): New method.
	(setSize): New method.
	(nativeSetBounds): New method.
	* jni/gtk-peer/gtkpeer.h: Declare setBoundsCallbackID.

From-SVN: r72043
2003-10-02 18:34:56 +00:00
Thomas Fitzsimmons 5ec47f6049 GtkDialogPeer.java (create()): Create a top-level GTK window.
2003-09-19  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkDialogPeer.java (create()): Create a
	top-level GTK window.
	(getArgs): Add "title" property.
	* gnu/java/awt/peer/gtk/GtkWindowPeer.java (setResizable): Use
	"allow_shrink" and "allow_grow" properties.
	* java/awt/Dialog.java: Initialize resizable to true and change
	comments accordingly.  Initialize visible to false in
	constructors.
	* java/awt/Frame.java (dispose): Remove method.
	* java/awt/Window.java (ownedWindows): New field.
	(Window(Window,GraphicsConfiguration)): Add a weak reference to
	owner's ownedWindows vector.
	(finalize): Remove method.
	(hide): Hide owned windows.
	(dispose): Dispose of owned windows.
	(getOwnedWindows): Implement.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c: Remove
	unused GtkArg code.
	(set(String,boolean)): Clamp gboolean parameter to g_object_set
	to TRUE or FALSE.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c
	(create): Set window's size requisition.
	(connectHooks): Fix indentation.
	(setResizable): Remove function.
	(static setBounds): Likewise.
	(setBounds): Replace call to setBounds with GTK size requisition
	and resize calls.

From-SVN: r71585
2003-09-19 19:27:59 +00:00
Graydon Hoare 1fe2d5fb09 GdkGraphics2D.java, [...]: New files.
2003-09-17  Graydon Hoare  <graydon@redhat.com>

	* gnu/java/awt/peer/gtk/GdkGraphics2D.java,
	gnu/java/awt/peer/gtk/GdkPixbufDecoder.java,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GdkPixbufDecoder.c:
	New files.

From-SVN: r71475
2003-09-17 20:03:02 +00:00
Thomas Fitzsimmons cc16baeb1b GtkEmbeddedWindowPeer.java (construct): Remove method declaration.
2003-09-16  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkEmbeddedWindowPeer.java (construct):
	Remove method declaration.
	(create()): Call native create.
	(create(int)): New method.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.c:
	(create): Add window_id parameter.  Call gtk_plug_new with
	window_id parameter.
	(construct): Remove method implementation.

From-SVN: r71453
2003-09-17 04:39:34 +00:00
Thomas Fitzsimmons 48c2d88a10 GtkDialogPeer.java (create): Add width and height arguments to GtkWindowPeer.create method call.
2003-09-02  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkDialogPeer.java (create): Add width
	and height arguments to GtkWindowPeer.create method call.
	* gnu/java/awt/peer/gtk/GtkWindowPeer.java
	(create(int,int,int)): New method.
	(create(int)): Add call to new create method.
	(create()): Add width and height arguments to create method
	call.
	(GtkWindowPeer): Remove call to setBounds.
	* java/awt/Frame.java (Frame(String)): Initialize visible field
	to false.
	(Frame(GraphicsConfiguration)): Likewise.
	(Frame(String,GraphicsConfiguration)): Likewise.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c (create):
	Add width and height parameters.  Call
	gtk_window_set_default_size.
	(connectHooks): Remove unused name variable.
	(static setBounds): Call gtk_window_resize not
	gtk_widget_set_usize.
	(setBounds): Remove unused nchildren variable.

From-SVN: r71007
2003-09-02 23:04:05 +00:00
Thomas Fitzsimmons 50fe737a03 GdkGraphics.java (drawString): Pass font name, not XLFD, to native drawString.
2003-08-22  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GdkGraphics.java (drawString): Pass font
	name, not XLFD, to native drawString.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c (drawString):
	Replace XLFD-based implementation with Pango-based
	implementation.

From-SVN: r70698
2003-08-22 20:33:50 +00:00
Thomas Fitzsimmons eb2a5f91b2 GtkWindowPeer.java: Remove GTK_WINDOW_DIALOG.
2003-08-22  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkWindowPeer.java: Remove
	GTK_WINDOW_DIALOG.  Set GTK_WINDOW_POPUP to 1.

From-SVN: r70688
2003-08-22 14:34:37 +00:00
Thomas Fitzsimmons d0b8b6fbf6 GtkComponentPeer.java (postKeyEvent): Add keyLocation parameter.
2003-08-05  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkComponentPeer.java (postKeyEvent):
	Add keyLocation parameter.
	* java/awt/event/KeyEvent.java (getKeyText): Fix "NumPad-"
	string.
	(paramString): Generate keyChar string according to keyChar, not
	keyCode.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(state_to_awt_mods): Handle ALT key.
	(keyevent_state_to_awt_mods): New function.
	(get_first_keyval_from_keymap): New function.
	(keysym_to_awt_keycode): Get virtual key code from keymap.
	Handle missing VK_ values.
	(keysym_to_awt_keylocation): New function.
	(keyevent_to_awt_keychar): New function.
	(generates_key_typed_event): Handle non-text-component case.
	Handle GDK_KP_Delete and GDK_KP_Enter.
	(awt_event_handler): Call new functions to get postKeyEvent
	parameters.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c (gtkInit):
	Update postKeyEvent method signature.
	* jni/gtk-peer/gtkpeer.h: Add KEY_LOCATION defines.  Add missing
	VK_ defines.

From-SVN: r70178
2003-08-05 18:04:09 +00:00
Thomas Fitzsimmons 5596e92fd8 GtkButtonPeer.java: Call getName rather than getXLFD.
2003-07-29  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkButtonPeer.java: Call getName rather
	than getXLFD.
	* gnu/java/awt/peer/gtk/GtkTextFieldPeer.java: Likewise.
	* gnu/java/awt/peer/gtk/GtkTextAreaPeer.java: Likewise.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c
	(gtkSetFont): Scale size parameter by PANGO_SCALE.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c:
	Likewise.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c:
	Likewise.

From-SVN: r69936
2003-07-29 19:42:37 +00:00
Thomas Fitzsimmons f17163688b gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.c: Create vbox and layout for GtkPlug.
2003-07-27  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.c:
	Create vbox and layout for GtkPlug.

From-SVN: r69861
2003-07-27 20:01:00 +00:00
Thomas Fitzsimmons 0963808165 2003-07-27 Thomas Fitzsimmons <fitzsim@redhat.com.h>
Michael Koch  <konqueror@gmx.de>

	* gnu/java/awt/EmbeddedWindow.java
	(EmbeddedWindow): Extends Frame instead of Window.
	(window_id): New member variable to store the native window handle.
	(create): Removed.
	(EmbeddedWindow): New constructor.
	(addNotify): New method.
	(getHandler): Likewise.
	(setWindowPeer): New native method.
	* gnu/java/awt/EmbeddedWindowSupport.java
	(EmbeddedWindowSupport): Fixed documentation.
	(createEmbeddedWindow): Return EmbeddedWindowPeer instead of
	WindowPeer, give it an EmbeddedWindow instance instead of the raw
	window data.
	* gnu/java/awt/natEmbeddedWindow.cc
	(create): Removed.
	(setWindowPeer): New method.
	* gnu/java/awt/peer/EmbeddedWindowPeer.java,
	gnu/java/awt/peer/gtk/GtkEmbeddedWindowPeer.java,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.c:
	New files
	* gnu/java/awt/peer/gtk/GtkToolkit.java
	(GtkToolkit): Implements EmbeddedWindowSupport.
	(createEmbeddedWindow): New method.
	* java/awt/Window.java
	(Window): Removed.
	* Makefile.am
	(java_source_files): Added EmbeddedWindowPeer.java.
	(gtk_awt_peer_sources): Added GtkEmbeddedWindowPeer.java.
	(gtk_c_source_files): Added gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.c.
	* Makefile.in: Regenerated.

Co-Authored-By: Michael Koch <konqueror@gmx.de>

From-SVN: r69859
2003-07-27 19:04:42 +00:00
Thomas Fitzsimmons dbe4baf569 gnu_java_awt_peer_gtk_GtkLabelPeer.c (create): Don't pack label in an event box.
2003-07-24  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.c (create):
	Don't pack label in an event box.

From-SVN: r69754
2003-07-24 18:27:46 +00:00
Thomas Fitzsimmons 434566e7e2 * gnu/java/awt/peer/gtk/GtkTextComponentPeer.java
(connectHooks): New method.
	(handleEvent): Remove.
	* gnu/java/awt/peer/gtk/GtkTextFieldPeer.java
	(createHooks): Remove declaration.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(generates_key_typed_event): Change to handle only certain
	keyvals.
	(awt_event_handler): Add special handling for GtkTextView.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c
	(textcomponent_commit_cb): New function.
	(textcomponent_changed_cb): Likewise.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c
	(connectHooks): Remove.

From-SVN: r69728
2003-07-23 22:26:35 +00:00
Thomas Fitzsimmons 9ef2dd1fad 2003-07-21 Thomas Fitzsimmons <fitzsim@redhat.com>
* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c
	(create): Remove unused method implementation.
	(connectHooks): Remove debug messages.

From-SVN: r69634
2003-07-21 15:35:38 +00:00
Graydon Hoare cecc892aea gnu_java_awt_peer_gtk_GtkScrollBarPeer.c: Handle missing event cases, connect to "value-changed" signal.
2003-07-18  Graydon Hoare  <graydon@redhat.com>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c:
	Handle missing event cases, connect to "value-changed" signal.

From-SVN: r69568
2003-07-18 19:27:42 +00:00
Thomas Fitzsimmons aeb3535dfb gnu_java_awt_peer_gtk_GtkMainThread.c: Fix formatting.
* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c: Fix
	formatting.

From-SVN: r69056
2003-07-07 21:50:47 +00:00
Thomas Fitzsimmons b6fa901bc9 * gnu/java/awt/peer/gtk/GtkTextComponentPeer.java
(setCaretPosition, setEditable): Rely entirely on native
	implementation.
	(getArgs): Remove.
	(postTextEvent): New method.
	(handleEvent): New method.
	* gnu/java/awt/peer/gtk/GtkTextFieldPeer.java (handleEvent): New
	method.
	* java/awt/event/ActionEvent.java (paramString): Fix formatting.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(keysym_to_awt_keycode): Fix range checks.
	(generates_key_typed_event): New function.
	(awt_event_handler): Post AWT_KEY_RELEASED events to event
	queue.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c
	(gtkInit): Store TextComponent's postTextEvent method ID.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c
	(setText): Post TEXT_VALUE_CHANGED event to event queue.

From-SVN: r69054
2003-07-07 19:56:04 +00:00
Thomas Fitzsimmons 29e531ff29 glib-2.0.m4: New file.
* glib-2.0.m4: New file.
	* gtk-2.0.m4: New file.
	* glib.m4: Remove.
	* gtk.m4: Remove.
	* configure.in: Update AM_PATH_GTK macro call to
	AM_PATH_GTK_2_0.  Likewise for AM_PATH_GLIB.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c,
	jni/gtk-peer/gthread-jni.c,
	jni/gtk-peer/gthread-jni.h:
	New versions from classpath.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* Makefile.in: Regenerate.
	* gcj/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

From-SVN: r68746
2003-06-30 23:53:29 +00:00
Hans Boehm 56bba8cf57 XToolkit.java (getFontMetrics): initialize if necessary.
2003-02-18  Hans Boehm  <Hans.Boehm@hp.com>

	* gnu/awt/xlib/XToolkit.java (getFontMetrics): initialize
	if necessary.

	* gnu/java/awt/peer/gtk/GtkButtonPeer.java,
	gnu/java/awt/peer/gtk/GtkTextAreaPeer.java,
	gnu/java/awt/peer/gtk/GtkTextFieldPeer.java,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c
	(setFont, gtkSetFont): add.
	gnu/java/awt/peer/gtk/GtkComponentPeer.java (GtkComponentPeer):
	Propagate font to peer.  (setFont): add FIXME comment.

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c
	(gtkTextGetSize): fix height, width computation.

	* gnu/java/awt/peer/gtk/GtkFontPeer.java (GtkFontPeer):
	Make X font name a bit less bogus.

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c
	(post_adjustment_event): Pass on GTK_SCROLL_NONE.

	* java/awt/Scrollbar.java (setValues): Fix visibleAmount range check.
	(processAdjustmentEvent): Adjust value.

	* java/awt/FlowLayout.java (layoutContainer) Fix 2 indexing and one
	logic errors.

	* java/awt/Component.java (setVisible, show, hide): Call show and
	hide methods in subclasses.
	(getPreferredSize): don't set prefSize before we have peer.

	* java/awt/TextArea.java, java/awt/TextField.java (getPreferredSize):
	Guess (0,0) if we don't have peer.

From-SVN: r63077
2003-02-19 00:35:35 +00:00
Tom Tromey 5aac1dac62 Window.java (Window(Window,GraphicsConfiguration)): Don't try to find graphics configuration.
* java/awt/Window.java (Window(Window,GraphicsConfiguration)):
	Don't try to find graphics configuration.
	* java/awt/Toolkit.java (default_toolkit_name): Use new
	Configuration entry.
	* gnu/classpath/Configuration.java.in (default_awt_peer_toolkit):
	New global.
	* configure: Rebuilt.
	* configure.in (TOOLKIT): New subst.
	(--enable-java-awt) [xlib, gtk]: Set TOOLKIT if required.
	Do AWT tests much earlier.  Run Gtk tests.  Make jniinclude
	directory.  Make output directories for .c files.
	* Makefile.in: Rebuilt.
	* Makefile.am (lib_gnu_java_awt_peer_gtk_la_SOURCES): New macro.
	(toolexeclib_LTLIBRARIES): Added cond_gtk_ltlibrary.
	(all_java_source_files): Added new sources.
	($(lib_gnu_java_awt_peer_gtk_la_OBJECTS)): New target.
	(gtk_c_files): New macro.
	(gtk_c_source_files): New macro.
	(cond_gtk_ltlibrary): New macro.
	($(gtk_c_files)): New target.
	(lib_gnu_java_awt_peer_gtk_la_LIBADD): New macro.
	(gtk_awt_peer_sources): New macro.
	(gtk_c_headers): New macro.
	($(gtk_c_headers)): New target.
	(ACLOCAL_AMFLAGS): New macro.
	* gtk.m4, glib.m4, libart.m4: New files.
	* gnu/java/awt/peer/gtk/GdkFontMetrics.java,
	gnu/java/awt/peer/gtk/GdkGraphics.java,
	gnu/java/awt/peer/gtk/GtkArg.java,
	gnu/java/awt/peer/gtk/GtkArgList.java,
	gnu/java/awt/peer/gtk/GtkButtonPeer.java,
	gnu/java/awt/peer/gtk/GtkCanvasPeer.java,
	gnu/java/awt/peer/gtk/GtkCheckboxGroupPeer.java,
	gnu/java/awt/peer/gtk/GtkCheckboxMenuItemPeer.java,
	gnu/java/awt/peer/gtk/GtkCheckboxPeer.java,
	gnu/java/awt/peer/gtk/GtkChoicePeer.java,
	gnu/java/awt/peer/gtk/GtkClipboard.java,
	gnu/java/awt/peer/gtk/GtkComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkContainerPeer.java,
	gnu/java/awt/peer/gtk/GtkDialogPeer.java,
	gnu/java/awt/peer/gtk/GtkFileDialogPeer.java,
	gnu/java/awt/peer/gtk/GtkFontPeer.java,
	gnu/java/awt/peer/gtk/GtkFramePeer.java,
	gnu/java/awt/peer/gtk/GtkGenericPeer.java,
	gnu/java/awt/peer/gtk/GtkImage.java,
	gnu/java/awt/peer/gtk/GtkImagePainter.java,
	gnu/java/awt/peer/gtk/GtkLabelPeer.java,
	gnu/java/awt/peer/gtk/GtkListPeer.java,
	gnu/java/awt/peer/gtk/GtkMainThread.java,
	gnu/java/awt/peer/gtk/GtkMenuBarPeer.java,
	gnu/java/awt/peer/gtk/GtkMenuComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkMenuItemPeer.java,
	gnu/java/awt/peer/gtk/GtkMenuPeer.java,
	gnu/java/awt/peer/gtk/GtkOffScreenImage.java,
	gnu/java/awt/peer/gtk/GtkPanelPeer.java,
	gnu/java/awt/peer/gtk/GtkPopupMenuPeer.java,
	gnu/java/awt/peer/gtk/GtkScrollbarPeer.java,
	gnu/java/awt/peer/gtk/GtkScrollPanePeer.java,
	gnu/java/awt/peer/gtk/GtkTextAreaPeer.java,
	gnu/java/awt/peer/gtk/GtkTextComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkTextFieldPeer.java,
	gnu/java/awt/peer/gtk/GtkToolkit.java,
	gnu/java/awt/peer/gtk/GtkWindowPeer.java,
	gnu/java/awt/peer/gtk/TestAWT.java,
	gnu/java/awt/peer/gtk/Test.java: New files from Classpath.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontMetrics.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCanvasPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkClipboard.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImagePainter.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuBarPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPanelPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c,
	jni/gtk-peer/gthread-jni.c, jni/gtk-peer/gthread-jni.h,
	jni/gtk-peer/gtkpeer.h, jni/classpath/jcl.c, jni/classpath/jcl.h,
	jni/classpath/jnilink.c, jni/classpath/jnilink.h,
	jni/classpath/native_state.c, jni/classpath/native_state.h,
	jni/classpath/primlib.c, jni/classpath/primlib.h: Likewise.

From-SVN: r62187
2003-01-31 17:54:14 +00:00