Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

148 lines
2.6 KiB

helper EventGadget
{
typedef UINT (CALLBACK * EventHandler)(void * pvData, EventMsg * pmsg);
};
helper Visual
{
struct VisualCI : public DUser::Gadget::ConstructInfo
{
Visual * pgvParent;
};
inline HRESULT IsVisible(BOOL * pfVisible, UINT nFlags)
{
return IsParentChainStyle(GS_VISIBLE, pfVisible, nFlags);
}
inline HRESULT IsEnabled(BOOL * pfEnabled, UINT nFlags)
{
return IsParentChainStyle(GS_ENABLED, pfEnabled, nFlags);
}
};
helper Flow
{
enum ETime
{
tBegin = 0,
tEnd
};
struct FlowCI : public DUser::Gadget::ConstructInfo
{
DWORD cbSize;
Visual * pgvSubject;
};
};
helper AlphaVertexFlow
{
static PRID GetPRID()
{
return DUserGetAlphaVertexPRID();
}
struct AlphaKeyFrame : DUser::KeyFrame
{
BYTE bAlpha;
};
};
helper RectFlow
{
static PRID GetPRID()
{
return DUserGetRectPRID();
}
struct RectKeyFrame : DUser::KeyFrame
{
UINT nChangeFlags;
RECT rcPxl;
};
};
helper RotateFlow
{
enum EDirection
{
dMin = 0,
dShort = 0, // Shortest arc
dLong = 1, // Longer arc
dCW = 2, // Clock-wise
dCCW = 3, // Counter clock-wise
dMax = 3,
};
static PRID GetPRID()
{
return DUserGetRotatePRID();
}
struct RotateKeyFrame : DUser::KeyFrame
{
float flRotation;
EDirection nDir;
};
};
helper ScaleFlow
{
static PRID GetPRID()
{
return DUserGetScalePRID();
}
struct ScaleKeyFrame : DUser::KeyFrame
{
UINT nChangeFlags;
float flScale;
};
};
helper LightFlow
{
static PRID GetPRID()
{
return DUserGetLightPRID();
}
struct LightKeyFrame : DUser::KeyFrame
{
UINT id;
float x;
float y;
float z;
float xDirection;
float yDirection;
float zDirection;
float outerCone;
float innerCone;
float attenuationA0;
float attenuationA1;
float attenuationA2;
int flags;
};
};
helper Sequence
{
struct AnimationInfo
{
DWORD cbSize;
};
BEGIN_STRUCT(CompleteEvent, EventMsg)
BOOL fNormal; // Sequenced finished normally
END_STRUCT(CompleteEvent)
DEFINE_EVENT(evComplete, "E90A6ABB-E4CF-4988-87EA-6D1EEDCD0097");
};