A distinction between a CAVE widget and a Desktop widget is necessary because some attributes are specific to CAVE widgets and some attributes are specific just to desktop widgets. For instance, during placement, a CAVE tool will have rotation and 3D translation. So, even though there is a tool abstraction, handles to the actual specific tool are needed to do platform specific operations. All of these platform specific operations are hidden in the interface mediator. As mentioned before, the interface mediator hides all of the interface ugliness so that the other components of the interface are flexible and reusable.