the code below is supposed to allow me to draw mutliple shapes.
Currently I'm trying to implement selecting shapes by clicking on them (to be able to drag them to a different location).
In the mouseClicked() method, I check whether the user just clicked inside a shape. However, it never returns true.
In the mouseExited() method I print width, height and class name of each of the shapes contained in the shapeList (which contains
all shapes drawn by the user). As it turns out, all shapes return zero values for width, height, central point coordinates etc. and I have no idea why?
My shape class extends the Rectangle2D.Double class so I don't know why methods like getHeight() etc. don't work properly on my shapes... If I override these methods
in my Shape implementation, they return correct values but I want to use the standard implementations contained in the Rectangle2D.Double class.
I would be veeery grateful for help with this!
author and iconoclast
Those "standard implementations" operate on the data held inside the Rect2D.Double class. Your subclass defines its own data, and it's only your own data that is initialized in your constructors. Instead, your implementation must use the member variables already defined in the superclass, and your constructors must make sure that data is initialized by calling the proper superclass constructors.