I initially created the ViewLauncher as a means for the MainViewController to load View objects. In order for the ViewLauncher to open windows it had to have a reference to the ViewLoader, and in order for the MainViewController to be given the ViewLauncher, the ViewLoader had to have a reference to the ViewLauncher. This created a cyclic dependency between them, making the initialization process complicated.
To remedy this the ViewLoader has been modified to perform the actions of the ViewLauncher, and the ViewLauncher has been removed. The old ViewLoader methods have been made private and only expose the new launch methods. The ViewLoader also adds itself to the dependency map, such that the MainViewController can still open windows.
I also added some Javadocs to the ViewLoader class as it lacked any description.
I initially created the
ViewLauncher
as a means for theMainViewController
to loadView
objects. In order for theViewLauncher
to open windows it had to have a reference to theViewLoader
, and in order for theMainViewController
to be given theViewLauncher
, theViewLoader
had to have a reference to theViewLauncher
. This created a cyclic dependency between them, making the initialization process complicated.To remedy this the
ViewLoader
has been modified to perform the actions of theViewLauncher
, and theViewLauncher
has been removed. The oldViewLoader
methods have been made private and only expose the new launch methods. TheViewLoader
also adds itself to the dependency map, such that theMainViewController
can still open windows.I also added some Javadocs to the
ViewLoader
class as it lacked any description.