|
/////////////////////////////////////////////////////////////////////////////////
// Copyright (C) 2003 - Don Kackman
//
// Distribute and change freely, but please don't remove my name from the source
//
// No warrantee of any kind, express or implied, is included with this
// software; use at your own risk, responsibility for damages (if any) to
// anyone resulting from the use of this software rests entirely with the
// user.
//
// The class CVisualStylesXp and the conept of theme browser app are borrowed from
// David Y Zhao. His example can be seen at http://www.codeproject.com/w2k/xpvisualstyle.asp
//
// questions - contact me at dkackman_2000@yahoo.com
//
#pragma once
#include "ThemePartState.h"
#include "ThemeItemCollection.h"
#include "IHasThemePartId.h"
namespace UxThemeTool
{
//
// Represents a collection of state record for one part
//
[System::Reflection::DefaultMember("Item")]
public ref class CStatesCollection sealed: public CThemeItemCollection
{
internal:
CStatesCollection( int parentIndex, String^ parentPartName, IHasThemePartId^ Parent );
private:
~CStatesCollection(void);
public:
property CThemePartState^ Item[int]
{
CThemePartState^ get(int index);
}
property CThemePartState^ Item[String^]
{
CThemePartState^ get( String^ partName );
}
[System::ComponentModel::EditorBrowsable(EditorBrowsableState::Never)]
virtual System::Object^ GetEnumeratorItem( int index ) override
{
return Item[index];
}
private:
IHasThemePartId^ m_Parent;
};
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
I am a C++ coder. I am also proficient with Oracle PL/SQL. A lot of folks dislike Oracle, but I find Oracle is a significant revenue enhancer. Customers pay for first rate Oracle programming skills.
I have extensive experience with COM+, COM, ATL, WTL and installation package development. I've developed several packages in C#, but I prefer managed/native C++. I've been coding for nearly thirty plus years, getting my start with atomic and molecular orbital calculations in FORTRAN. I've been working with C or C++ since the days of QuickC, Desmet C, Datalight C and MSC 5.1.
One of my pet peeves in life is a programmer's lack of attention to the details of error handling. Most example code I see on the internet lacks depth. No use of Window's Event Logging and a lack of understanding as to how to handle exceptions. If folks actually think about how to properly debug and test, there would be fewer "slop" articles and a lot higher quality.
Including instrumentation in your software to allow proper diagnosis of failures is far more important to a user than the latest Gee-Whiz-Bang visual effects. Graphical gotta-haves fade like the lettuce in a refrigerator, but solid programs just keep on running, no matter what environment they are placed in.
My Web Site, Blog & Wiki