Added the IActionVisitor interface with the necessary visit methods for the
color actions.
Added the visitor SetColorActionVisitor implementing the IActionVistor
interface. The visit methods are still empty.
Added the IActionElement interface with the accept method.
Made the classes CloudColorAction, EdgeColorAction, and NodeColorAction
implement the IActionElement interface and implemented the accept method
in each of them.
Added class variables node and color to the CloudColorAction class. These variables will be set when calling the setCloudColor method and then used by the SetColorActionVisitor class.
Added getter methods for the variable node, color, and controller in order to be able to use them in the visitor class.
Moved the code responsible for the color change from the setCloudColor method of the CloudColorAction class to the visit method in SetColorActionVisitor. And then moved the createCloudColorXmlAction method from the CloudColorAction class to the SetColorActionVisitor class.
Added class variables node and color to the EdgeColorAction class. These variables will be set when calling the setEdgeColor method and then used by the SetColorActionVisitor class.
Added getter methods for the variable node, color, and controller in order to be able to use them in the visitor class.
Moved the code responsible for the color change from the setEdgeColor method of the EdgeColorAction class to its visit method in SetColorActionVisitor. And then moved the createEdgeColorFormatAction method from the EdgeColorAction class to the SetColorActionVisitor class.
Added class variables node and color to the NodeColorAction class. These variables will be set when calling the setNodeColor method and then used by the SetColorActionVisitor class.
Added getter methods for the variable node, color, and controller in order to be able to use them in the visitor class.
Moved the code responsible for the color change from the setNodeColor method of the NodeColorAction class to its visit method in SetColorActionVisitor. And then moved the createNodeColorFormatAction method from the NodeColorAction class to the SetColorActionVisitor class.
Added the a call to the right accept method from the SetColorActionVisitor class in the setCloudColor, setEdgeColor, and setNodeColor methods of the MindMapController class.