mirror of https://github.com/tongzx/nt5src
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
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");
|
|
};
|
|
|