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.
197 lines
6.1 KiB
197 lines
6.1 KiB
/***************************************************************************\
|
|
*
|
|
* DirectUser-Display
|
|
*
|
|
\***************************************************************************/
|
|
|
|
class EventGadget
|
|
{
|
|
event HRESULT OnEvent(in EventMsg * pmsg);
|
|
|
|
dapi HRESULT GetFilter(out UINT nFilter);
|
|
dapi HRESULT SetFilter(in UINT nNewFilter, in UINT nMask);
|
|
dapi HRESULT AddHandlerG(in MSGID nEventMsg, in EventGadget * pgbHandler);
|
|
dapi HRESULT AddHandlerD(in MSGID nEventMsg, in DUser::EventDelegate ed);
|
|
dapi HRESULT RemoveHandlerG(in MSGID nEventMsg, in EventGadget * pgbHandler);
|
|
dapi HRESULT RemoveHandlerD(in MSGID nEventMsg, in DUser::EventDelegate ed);
|
|
};
|
|
|
|
|
|
class Listener : public EventGadget
|
|
{
|
|
};
|
|
|
|
|
|
class Visual : public EventGadget
|
|
{
|
|
dapi HRESULT SetOrder(in Visual * pgvOther, in UINT nCmd);
|
|
dapi HRESULT SetParent(in Visual * pgvParent, in Visual * pgvOther, in UINT nCmd);
|
|
|
|
dapi HRESULT GetGadget(in UINT nCmd, out Visual * pgv);
|
|
dapi HRESULT GetStyle(out UINT nStyle);
|
|
dapi HRESULT SetStyle(in UINT nNewStyle, in UINT nMask);
|
|
dapi HRESULT SetKeyboardFocus();
|
|
dapi HRESULT IsParentChainStyle(in UINT nStyle, out BOOL fResult, in UINT nFlags);
|
|
|
|
dapi HRESULT GetProperty(in PRID id, out void * pvValue);
|
|
dapi HRESULT SetProperty(in PRID id, in void * pvValue);
|
|
dapi HRESULT RemoveProperty(in PRID id);
|
|
|
|
dapi HRESULT Invalidate();
|
|
dapi HRESULT InvalidateRects(const RECT * rgrcClientPxl, int cRects);
|
|
dapi HRESULT SetFillF(in Gdiplus::Brush * pgpgrFill);
|
|
dapi HRESULT SetFillI(in HBRUSH hbrFill, in BYTE bAlpha, in int w, in int h);
|
|
dapi HRESULT GetScale(out float flX, out float flY);
|
|
dapi HRESULT SetScale(in float flX, in float flY);
|
|
dapi HRESULT GetRotation(out float flRotationRad);
|
|
dapi HRESULT SetRotation(in float flRotationRad);
|
|
dapi HRESULT GetCenterPoint(out float flX, out float flY);
|
|
dapi HRESULT SetCenterPoint(in float flX, in float flY);
|
|
|
|
dapi HRESULT GetBufferInfo(in BUFFER_INFO * pbi);
|
|
dapi HRESULT SetBufferInfo(in const BUFFER_INFO * pbi);
|
|
|
|
dapi HRESULT GetSize(out SIZE sizeLogicalPxl);
|
|
dapi HRESULT GetRect(in UINT nFlags, out RECT rcPxl);
|
|
dapi HRESULT SetRect(in UINT nFlags, in const RECT * prcPxl);
|
|
|
|
dapi HRESULT MapPoints(in Visual * pgvTo, in /* out */ POINT * rgptClientPxl, in int cPts);
|
|
dapi HRESULT FindFromPoint(in POINT ptThisClientPxl, in UINT nStyle, out POINT ptFoundClientPxl, out Visual * pgvFound);
|
|
};
|
|
|
|
|
|
class Root : public Visual
|
|
{
|
|
dapi HRESULT GetFocus(out Visual * pgvFocus);
|
|
|
|
dapi HRESULT GetRootInfo(out ROOT_INFO * pri);
|
|
dapi HRESULT SetRootInfo(in const ROOT_INFO * pri);
|
|
};
|
|
|
|
|
|
//
|
|
// DirectUser-Animations
|
|
//
|
|
|
|
class Extension : public Listener
|
|
{
|
|
dapi HRESULT OnRemoveExisting();
|
|
dapi HRESULT OnDestroySubject();
|
|
dapi HRESULT OnAsyncDestroy();
|
|
};
|
|
|
|
|
|
class Interpolation
|
|
{
|
|
dapi HRESULT AddRef();
|
|
dapi HRESULT Release();
|
|
dapi HRESULT Compute(in float flProgress, in float flStart, in float flEnd, out float flResult);
|
|
};
|
|
|
|
|
|
class LinearInterpolation : public Interpolation
|
|
{
|
|
};
|
|
|
|
|
|
class LogInterpolation : public Interpolation
|
|
{
|
|
dapi HRESULT SetScale(in float flScale);
|
|
};
|
|
|
|
|
|
class ExpInterpolation : public Interpolation
|
|
{
|
|
dapi HRESULT SetScale(in float flScale);
|
|
};
|
|
|
|
|
|
class SCurveInterpolation : public Interpolation
|
|
{
|
|
dapi HRESULT SetScale(in float flScale);
|
|
};
|
|
|
|
|
|
class Animation : public Extension
|
|
{
|
|
dapi HRESULT AddRef();
|
|
dapi HRESULT Release();
|
|
|
|
dapi HRESULT SetTime(in UINT time);
|
|
};
|
|
|
|
|
|
class Flow
|
|
{
|
|
dapi HRESULT AddRef();
|
|
dapi HRESULT Release();
|
|
|
|
dapi HRESULT GetPRID(out PRID prid);
|
|
dapi HRESULT GetKeyFrame(in Flow::ETime time, out DUser::KeyFrame * pkf);
|
|
dapi HRESULT SetKeyFrame(in Flow::ETime time, in const DUser::KeyFrame * pkf);
|
|
|
|
dapi HRESULT OnReset(in Visual * pgvSubject);
|
|
dapi HRESULT OnAction(in Visual * pgvSubject, in Interpolation * pipol, in float flProgress);
|
|
};
|
|
|
|
|
|
class AlphaFlow : public Flow
|
|
{
|
|
|
|
};
|
|
|
|
|
|
class RectFlow : public Flow
|
|
{
|
|
|
|
};
|
|
|
|
|
|
class RotateFlow : public Flow
|
|
{
|
|
|
|
};
|
|
|
|
|
|
class ScaleFlow : public Flow
|
|
{
|
|
|
|
};
|
|
|
|
|
|
class Sequence : public Listener
|
|
{
|
|
dapi HRESULT AddRef();
|
|
dapi HRESULT Release();
|
|
|
|
dapi HRESULT GetLength(out float flLength);
|
|
dapi HRESULT GetDelay(out float flDelay);
|
|
dapi HRESULT SetDelay(in float flDelay);
|
|
dapi HRESULT GetFlow(out Flow * pflow);
|
|
dapi HRESULT SetFlow(in Flow * pflow);
|
|
dapi HRESULT GetFramePause(out DWORD dwPause);
|
|
dapi HRESULT SetFramePause(in DWORD dwPause);
|
|
|
|
dapi HRESULT GetKeyFrameCount(out int cFrames);
|
|
dapi HRESULT AddKeyFrame(in float flTime, out int idxKeyFrame);
|
|
dapi HRESULT RemoveKeyFrame(in int idxKeyFrame);
|
|
dapi HRESULT RemoveAllKeyFrames();
|
|
dapi HRESULT FindKeyFrame(in float flTime, out int idxKeyFrame);
|
|
|
|
dapi HRESULT GetTime(in int idxKeyFrame, out float flTime);
|
|
dapi HRESULT SetTime(in int idxKeyFrame, in float flTime);
|
|
dapi HRESULT GetKeyFrame(in int idxKeyFrame, out DUser::KeyFrame * pkf);
|
|
dapi HRESULT SetKeyFrame(in int idxKeyFrame, in const DUser::KeyFrame * pkfSrc);
|
|
dapi HRESULT GetInterpolation(in int idxKeyFrame, out Interpolation * pipol);
|
|
dapi HRESULT SetInterpolation(in int idxKeyFrame, in Interpolation * pipol);
|
|
|
|
dapi HRESULT Play(in Visual * pgvSubject, in Sequence::AnimationInfo * pai);
|
|
dapi HRESULT Stop();
|
|
dapi HRESULT Reset(in Visual * pgvSubject);
|
|
dapi HRESULT GotoTime(in Visual * pgvSubject, in float flTime);
|
|
};
|
|
|
|
|
|
class DropTarget : public Extension
|
|
{
|
|
};
|