Fighting with CAB visualizers and visualizations

Anyone who has previously developed with CAB knows that documentation and information are scarce, but when one faces something like I recently faced, everything becomes even more difficult.


When I tried to use a visualizer with my application, I was faced with something very strange (to say the least).


(For those who don’t know it, a visualizer is a CAB component that collects information about the WorkItems in the application and makes that information available to visualizations that will display it.)


Finding out that I needed a visualizer element in my configuration file it wasn’t easy. But nothing prepared me to the fact that this element is just a collection of visualizations.


The configuration section looks something like this:


<visualizer>
	<add type=visualization type/><add type=visualization type/>
</visualizer>

Would it be more logical to have something like this?

<visualizer type=visualizer type>
	<visualizations>
		<add type=visualization type/><add type=visualization type/>
	<visualizations>
</visualizer>

We could even configure the type of the visualizer, which we can’t with the current architecture.


And this pearl came out of PAG.