diff options
author | Michael Koch <konqueror@gmx.de> | 2005-01-24 18:49:53 +0000 |
---|---|---|
committer | Michael Koch <konqueror@gmx.de> | 2005-01-24 18:49:53 +0000 |
commit | 990b38f65a42bf7bc3f40b32c8b2c829aaee6285 (patch) | |
tree | e5884b8ea9bc24f626723359de6a47f968860e78 | |
parent | 660e4655d01a84252d4d90c836358c21f926efa2 (diff) |
2005-01-24 Michael Koch <konqueror@gmx.de>
* javax/swing/plaf/basic/BasicTextUI.java
(RootView.modelToView): Made it public and return a java.awt.Shape.
Handle null subview.
(uninstall): Set textComponent to null when its not possible used
anymore.
* javax/swing/text/View.java
(setParent): Use better argument name.
(getContainer): Get parent via getParent().
(getViewFactory): Likewise.
(getAttributes): Get element via getElement().
(getStartOffset): Likewise.
(getEndOffset): Likewise.
(getResizeWeight): New method.
(getMaximumSpan): Likewise.
(getMinimumSpan): Likewise.
(setSize): Likewise.
(getGraphics): Likewise.
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/java-gui-branch@94172 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | libjava/ChangeLog | 20 | ||||
-rw-r--r-- | libjava/javax/swing/plaf/basic/BasicTextUI.java | 18 | ||||
-rw-r--r-- | libjava/javax/swing/text/View.java | 49 |
3 files changed, 75 insertions, 12 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index ba935fb64d0..ec243b9ab3a 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,23 @@ +2005-01-24 Michael Koch <konqueror@gmx.de> + + * javax/swing/plaf/basic/BasicTextUI.java + (RootView.modelToView): Made it public and return a java.awt.Shape. + Handle null subview. + (uninstall): Set textComponent to null when its not possible used + anymore. + * javax/swing/text/View.java + (setParent): Use better argument name. + (getContainer): Get parent via getParent(). + (getViewFactory): Likewise. + (getAttributes): Get element via getElement(). + (getStartOffset): Likewise. + (getEndOffset): Likewise. + (getResizeWeight): New method. + (getMaximumSpan): Likewise. + (getMinimumSpan): Likewise. + (setSize): Likewise. + (getGraphics): Likewise. + 2005-01-24 Andrew John Hughes <gnu_andrew@member.fsf.org> * java/awt/Checkbox.java: diff --git a/libjava/javax/swing/plaf/basic/BasicTextUI.java b/libjava/javax/swing/plaf/basic/BasicTextUI.java index 28fa24c3db0..a94ca2bb420 100644 --- a/libjava/javax/swing/plaf/basic/BasicTextUI.java +++ b/libjava/javax/swing/plaf/basic/BasicTextUI.java @@ -1,5 +1,5 @@ -/* BasicTextUI.java - Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. +/* BasicTextUI.java -- + Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -104,6 +104,8 @@ public abstract class BasicTextUI extends TextUI super(null); } + // View methods. + public ViewFactory getViewFactory() { // FIXME: Handle EditorKit somehow. @@ -140,9 +142,12 @@ public abstract class BasicTextUI extends TextUI view.paint(g, s); } - protected Rectangle modelToView(int position, Shape a, Position.Bias bias) + public Shape modelToView(int position, Shape a, Position.Bias bias) throws BadLocationException { + if (view == null) + return null; + return ((PlainView) view).modelToView(position, a, bias).getBounds(); } } @@ -327,11 +332,12 @@ public abstract class BasicTextUI extends TextUI rootView.setView(null); textComponent.removePropertyChangeListener(updateHandler); - textComponent = null; uninstallDefaults(); uninstallListeners(); uninstallKeyboardActions(); + + textComponent = null; } protected void uninstallDefaults() @@ -442,13 +448,13 @@ public abstract class BasicTextUI extends TextUI public View create(Element elem) { - // subclasses have to implement this to get this functionality + // Subclasses have to implement this to get this functionality. return null; } public View create(Element elem, int p0, int p1) { - // subclasses have to implement this to get this functionality + // Subclasses have to implement this to get this functionality. return null; } diff --git a/libjava/javax/swing/text/View.java b/libjava/javax/swing/text/View.java index 0c9eefe7c65..498bb09f28d 100644 --- a/libjava/javax/swing/text/View.java +++ b/libjava/javax/swing/text/View.java @@ -1,5 +1,5 @@ /* View.java -- - Copyright (C) 2002, 2004 Free Software Foundation, Inc. + Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -35,6 +35,7 @@ this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version. */ + package javax.swing.text; import java.awt.Container; @@ -69,9 +70,9 @@ public abstract class View implements SwingConstants public abstract void paint(Graphics g, Shape s); - public void setParent(View a) + public void setParent(View parent) { - parent = a; + this.parent = parent; } public View getParent() @@ -87,6 +88,7 @@ public abstract class View implements SwingConstants public Container getContainer() { + View parent = getParent(); return parent != null ? parent.getContainer() : null; } @@ -101,6 +103,32 @@ public abstract class View implements SwingConstants } public abstract float getPreferredSpan(int axis); + + public int getResizeWeight(int axis) + { + return 0; + } + + public float getMaximumSpan(int axis) + { + if (getResizeWeight(axis) <= 0) + return getPreferredSpan(axis); + + return Integer.MAX_VALUE; + } + + public float getMinimumSpan(int axis) + { + if (getResizeWeight(axis) <= 0) + return getPreferredSpan(axis); + + return Integer.MAX_VALUE; + } + + public void setSize(float width, float height) + { + // The default implementation does nothing. + } public float getAlignment(int axis) { @@ -109,7 +137,7 @@ public abstract class View implements SwingConstants public AttributeSet getAttributes() { - return elt.getAttributes(); + return getElement().getAttributes(); } public boolean isVisible() @@ -129,6 +157,7 @@ public abstract class View implements SwingConstants public ViewFactory getViewFactory() { + View parent = getParent(); return parent != null ? parent.getViewFactory() : null; } @@ -167,12 +196,12 @@ public abstract class View implements SwingConstants public int getStartOffset() { - return elt.getStartOffset(); + return getElement().getStartOffset(); } public int getEndOffset() { - return elt.getEndOffset(); + return getElement().getEndOffset(); } public Shape getChildAllocation(int index, Shape a) @@ -205,5 +234,13 @@ public abstract class View implements SwingConstants return null; } + + /** + * @since 1.3 + */ + public Graphics getGraphics() + { + return getContainer().getGraphics(); + } } |