Currently to design a new theme and apply it, a lot of elements must be touched and configured.
The existing Extender class in DockSample project provides basic support of centralizing the configuration, but every time to add a new theme Extender must be modified which is not flexible enough.
We need a new design to replace the Extender class.
In the following attempt I replaced Extender with a few ITheme derived classes,
After this change, every time we want to introduce a new theme, we only need to create a new derived class from ITheme, which is simpler to manage.