In our current project the modules publish all the available toolbar and menu actions and the toolbar subscribes to these "ActionAvailable" events. The events carry a delegate (which has to be called when the toolbar button is pressed), an action description (= tooltip text), an icon etc.
In our current project the modules publish all the available toolbar and menu actions and the toolbar subscribes to these "ActionAvailable" events. The events carry a delegate (which has to be called when the toolbar button is pressed), an action description (= tooltip text), an icon etc. This way neither the shell has a direct dependency on the modules nor the modules have a dependency on the shell.
Good advice. I went a slightly different route... I built a ShellController (and obviously an IShellController interface). The interface gets injected into the modules.
The modules then register their toolbar buttons using an IShellController. RegisterToolbar(ICommand command) command. Not as loosely coupled as your implementation though.
– willem Jul 27 '09 at 7:28.
I cant really gove you an answer,but what I can give you is a way to a solution, that is you have to find the anglde that you relate to or peaks your interest. A good paper is one that people get drawn into because it reaches them ln some way.As for me WW11 to me, I think of the holocaust and the effect it had on the survivors, their families and those who stood by and did nothing until it was too late.