The most intelligent Java IDE
[Logo] JavaRanch » JavaRanch Saloon
  Search | FAQ | Recent Topics | Hot Topics
Register / Login


Reply Bookmark it! Watch this topic JavaRanch » Forums » Java » Swing / AWT / SWT / JFace
 
RSS feed
 
New topic
Author

Subclassing Graphics2D

Garrett Rowe
Ranch Hand

Joined: Jan 17, 2006
Messages: 1248

One article that I read about testing GUI intensive applications suggested subclassing the Graphics object to provide a textual representation of the calls made on it (http://c2.com/cgi/wiki?ExtremeProgrammingTestingGuiIntensiveApps) my question is, since the Graphics object is propagated by the Swing components that control the rendering of individual controls, how can one substitute a subclass in a coherent manner. One solution I can think of is something like this:



But since you would have to add the boilerplate to every GUI class, that seems a bit clumsy. Is there a better way where the Graphics subclass will automatically get propogated throughout the system?


Some problems are so complex that you have to be highly intelligent and well informed just to be undecided about them. - Laurence J. Peter
Ulf Dittmer
Sheriff

Joined: Mar 22, 2005
Messages: 26792

I don't have an answer to that, but here's a library that contains several subclasses of Graphics2D; maybe its source code provides some clues.

Java web chartsImageJ PluginsSpecification URLsJava FAQs
Garrett Rowe
Ranch Hand

Joined: Jan 17, 2006
Messages: 1248

Thanks for the link Ulf. Looking at the tutorials for that library, the two use cases that I see are either constructing the Graphics2D subclass and calling paint(Graphics) directly with the newly created subclass.


Or wrapping the Graphics object inside an overridden paint(Graphics) method:


I guess the first version would be better for the unit testing strategy discussed in the link. That was so simple I don't know why it was escaping me.

This message was edited 1 time. Last update was at by Garrett Rowe


Some problems are so complex that you have to be highly intelligent and well informed just to be undecided about them. - Laurence J. Peter
 
 
 
Reply Bookmark it! Watch this topic JavaRanch » Forums » Java » Swing / AWT / SWT / JFace
 
RSS feed
 
New topic
IntelliJ open source

.