|
I wanted to find out how to use the Visual Studio 2008 custom theme, so I started with the Users' Guide, drew a blank, so opened the Online Help. Nothing in the contents or the index, so I searched for "theme" and got 500 hits, which was unmanageable, so then tried "custom theme", with an equally unmanageable 183 hits.
Next, I grepped the samples tree and found a likely candidate in Samples\CommandBars\CustomThemes, and discovered that I needed to make the following call:
CXTPPaintManager::SetCustomTheme(new CXTPVisualStudio2008Theme());
So far so good, but the appearance of the resulting status bar is nothing like in VS 2008. The sample does not use tabbed docking panes, but when I create some using CXTPDockingPaneManager, they also look nothing like VS 2008. Where could I find out how to apply the same custom theme to status bars and the pane manager? There are 74 samples, so I tried to narrow down the search by grepping SetCustomTheme, which occurs in 14 of them. DockingContainers looks a possibility, but it's making the following call:
XTPPaintManager()->SetCustomTheme(new CComandBarsPaintManager());
No indication is given of why it's doing it differently from the CustomThemes sample. However, I spotted this line:
m_paneManager.SetCustomTheme(new CDockingPanePaintManager());
but it turns out that that uses a different class of theme, which hasn't got a subclass for VS 2008.
At this point, I was totally confused about themes. The complete lack of documentation and helpful comments in the sample files meant that I would have to plough through hundreds of lines of source code to find out how they worked, and I don't have the time.
Please, please, please CodeJock, write some proper documentation, and save your time having to explain the same things over and over again, and your customers time having to make sense out of undocumented source code. It's such a waste!
|