This is the mail archive of the
java-patches@gcc.gnu.org
mailing list for the Java project.
Re: [gui][patch] various fixes to scrolling
- From: Thomas Fitzsimmons <fitzsim at redhat dot com>
- To: graydon hoare <graydon at redhat dot com>
- Cc: "java-patches.gcc.gnu.org" <java-patches at gcc dot gnu dot org>
- Date: Sat, 10 Jul 2004 14:31:29 -0400
- Subject: Re: [gui][patch] various fixes to scrolling
- References: <opsaxoapf2tgmzw2@dub.venge.net>
On Sat, 2004-07-10 at 14:00, graydon hoare wrote:
> hi,
>
> I just committed this patch which fixes a few compile-with-jikes problems
> and a variety of little incorrect calculations related to scrollpanes,
> scrollbars, buttons, viewports, etc. the result has the scrollpanes and
> scrollables working much more like sun's implementation.
>
> fwiw, I've added this rule to my supervisory makefile to make sure we're
> catching everything jikes sees and gcj doesn't. it only takes a few extra
> seconds on a build, and should help with classpath merging. I'd recommend
> the other gui hackers add something similar to their environments (green
> suggests ant+ecj, but I already had jikes+makes installed):
>
> check-native-with-jikes:
> rm -Rf tmp-jikes-build sourcelist
> mkdir tmp-jikes-build
> find $(LIBJAVA) -name \*.java \
> | grep -v 'testsuite\|scripts\|Win32\|Ecos' >sourcelist
> jikes +E -nowarn -bootclasspath $(BUILD) -d tmp-jikes-build @sourcelist
>
Can we just commit this on java-gui-branch? Does it make sense to make
libgcj.jar depend on this new target?
Tom
>
> -graydon
>
>
> 2004-07-10 Graydon Hoare <graydon@redhat.com>
>
> * gnu/java/awt/peer/gtk/GtkToolkit.java (bufferedImageOrError):
> Make method non-static.
> * javax/swing/AbstractButton.java:
> Rename fields to match property names where possible.
> (iconTextGap): New property.
> * javax/swing/JCheckBox.java: Match AbstractButton changes.
> (init) New method, call from after various constructors.
> * javax/swing/JComponent.java (revalidate):
> Invalidate before queueing repair.
> * javax/swing/JList.java (getPreferredScrollableViewportSize):
> Reimplement in terms of visibleRowCount property.
> * javax/swing/JMenuButton.java: Match AbstractButton changes.
> * javax/swing/JScrollPane.java (createScrollListener):
> Remove tracing chatter.
> * javax/swing/JToggleButton.java: Match AbstractButton changes.
> * javax/swing/RepaintManager.java (addInvalidComponent):
> Don't invalidate.
> * javax/swing/ScrollPaneLayout.java: Various corrections to layout
> calculations.
> * javax/swing/SwingUtilities.java (layoutCompoundLabel):
> Mimic sun behavior on top left/right positioning.
> * javax/swing/ViewportLayout.java (preferredLayoutSize):
> Remove mistaken use of preferredScrollableViewportSize here.
> (layoutContainer): Use view's preferred size as basis.
> * javax/swing/plaf/basic/BasicButtonUI.java:
> Set, get, and use textIconGap property.
> (paint) Paint text returned from layout (with ellipsis).
> * javax/swing/plaf/basic/BasicListUI.java:
> Remove tracing chatter, correct various minor calculations.
> (getCellBounds): Update layout state before calculating.
> * javax/swing/plaf/basic/BasicLookAndFeel.java (Button.Margin):
> Use margin default similar to sun's.
> * javax/swing/plaf/basic/BasicScrollBarUI.java (ArrowIcon):
> (createIncreaseIcon): Center icon, minimize margins.
> (createDecreaseIcon): Likewise.
> * javax/swing/plaf/basic/BasicScrollPaneUI.java (installDefaults):
> Implement.
> (installUI): Call it.
> (uninstallDefaults): Implement.
> (uninstallUI): Call it.
> * javax/swing/plaf/basic/BasicToolBarUI.java (DragWindow):
> Call existing Window constructor.
> * javax/swing/plaf/basic/BasicViewportUI.java (paint):
> Set clip before painting.