What exactly is your use case? Do you want to programmatically select parts in the viewer or do you want to react to a selection within the viewer (performed by the user)?

I want the figures (editparts) to react to a selection within the viewer performed by the user. For use case, consider the Zest example of PDE dependency, in which when a user select a plugin, its required plugins will be highlighted.