I have been using MVC approach for many years, and now users have a new request that I have to provide.
Let's say the users want to visualize a house that has a kitchen, several bed rooms, a guest room, and a garage. users want to create several views that can look at different parts of the house (see attachment draft). Each view is an MDI subwindow, which can be activated one at a time. The left panel is a tree widget that lists the house and its components.
When View 2 is activated, the items selected or unselected in the left panel will apply only to view 2. When view 1 is activated (by clicking on the view 1's title bar), the left panel will immediately show the selection state of the view 1, and then the items selected or unselected in the left panel will apply only to view 1, etc.
What is the best approach to design this project? Obviously, it has a Data Model, several View Models, and several Views. But how about the controller? Or should I use other design pattern?
Model-view-viewModel (MVVM) doesn't seem to work either...
Any suggestion is very welcome!