Problem with the goObjects and GoDocuments


In our application we are adding the GraphNodes (a Derivation of GoGeneralNode) to GraphDoc (a Derivation of GoDocument). while adding the nodes to the document we are assigning the "PartIDs" ( ex: TopPort.PartID,RightPort.PartID) manually. I am sure that all the partIDs we are assigning are different from others.
All the things are working fine, we are facing a small probelm. to manage the childnodes ( nodes that are attached to the node with the arrows) we added the symbols like +,-. we are using + sign at the topleft corner of the node when all its children are made invisible, and - sign at the topleft corner of the node when all its children made visible. we are adding the +,- signs to the nodes programatically by using the drawline method of GoShape object.
the problem is when the mouse is on a node we are showing the Description of the node where the mouse is. but sometimes what is happening is if the mouse is on the +,- signs the description is different from the corresponding node and the things are also going in the same way.
Please help me on this.

Since the “+” or “-” sign is not a separate GoObject, there isn’t anything to respond to mouse events except whatever GoObject is at that location.

Are you sure that the "+"/"-" sign is totally within the Bounds of some non-group child of the GraphNode, such as the Icon? If it isn't, then that would explain why it doesn't appear to be getting the events that you are handling in order to display the description.
One solution would be to use a GoCollapsibleHandle as the "+"/"-" sign. TreeAppNode in the TreeApp sample application does this. So does the modified DataSetDemo:
Another solution, if the "+"/"-" sign is within the Bounds of the GraphNode, is to set GoGroup.PickableBackground to true. However, this will mean that users clicking at other points withing the node Bounds will select the node, even when there is nothing present at that point.