Don't let our preferred size shrink in our constrained direction.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@1092 6335cc39-0255-0410-8fd6-9bcaacd3b74c
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// $Id: MultiLineLabel.java,v 1.11 2003/04/02 04:04:53 mdb Exp $
|
// $Id: MultiLineLabel.java,v 1.12 2003/04/04 21:29:54 mdb Exp $
|
||||||
//
|
//
|
||||||
// samskivert library - useful routines for java programs
|
// samskivert library - useful routines for java programs
|
||||||
// Copyright (C) 2002 Walter Korman
|
// Copyright (C) 2002 Walter Korman
|
||||||
@@ -331,12 +331,34 @@ public class MultiLineLabel extends JComponent
|
|||||||
// dimensions
|
// dimensions
|
||||||
layoutLabel();
|
layoutLabel();
|
||||||
}
|
}
|
||||||
|
|
||||||
Dimension size = _label.getSize();
|
Dimension size = _label.getSize();
|
||||||
return (size == null) ? new Dimension(10, 10) : size;
|
if (size != null) {
|
||||||
|
// never let our preferred size shrink in our constrained
|
||||||
|
// direction
|
||||||
|
switch (_constrain) {
|
||||||
|
case HORIZONTAL:
|
||||||
|
_prefd.width = Math.max(_prefd.width, size.width);
|
||||||
|
_prefd.height = size.height;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case VERTICAL:
|
||||||
|
_prefd.width = size.width;
|
||||||
|
_prefd.height = Math.max(_prefd.height, size.height);
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
_prefd.width = size.width;
|
||||||
|
_prefd.height = size.height;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return _prefd;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** The dimensions occupied by our label. */
|
/** Our preferred size. */
|
||||||
protected Dimension _psize;
|
protected Dimension _prefd = new Dimension(5, 5);
|
||||||
|
|
||||||
/** The label we're displaying. */
|
/** The label we're displaying. */
|
||||||
protected Label _label;
|
protected Label _label;
|
||||||
|
|||||||
Reference in New Issue
Block a user