149 lines
2.6 KiB
Plaintext
149 lines
2.6 KiB
Plaintext
|
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");
|
||
|
};
|
||
|
|