⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hintanimpl.h

📁 wxGTK 是 wxWidgets 的 linux GTK+ (>2.2.3)版本。wxWidgets 是一个跨平台的 GUI 框架
💻 H
字号:
/////////////////////////////////////////////////////////////////////////////// Name:        hintanimpl.h// Purpose:     Header for cbHintAnimationPlugin class.// Author:      Aleksandras Gluchovas// Modified by:// Created:     9/11/98// RCS-ID:      $Id: hintanimpl.h,v 1.7 2005/09/23 12:46:57 MR Exp $// Copyright:   (c) Aleksandras Gluchovas// Licence:     wxWindows licence/////////////////////////////////////////////////////////////////////////////#ifndef __HINTANIMPL_G__#define __HINTANIMPL_G__#include "wx/fl/controlbar.h"#include "wx/timer.h"class WXDLLIMPEXP_FL cbHintAnimTimer;/*A plugin to draw animated hints when the user drags a pane.*/class WXDLLIMPEXP_FL cbHintAnimationPlugin : public cbPluginBase{    DECLARE_DYNAMIC_CLASS( cbHintAnimationPlugin )protected:    friend class cbHintAnimTimer;    wxScreenDC*      mpScrDc;     // created while tracking hint-rect    cbHintAnimTimer* mpAnimTimer;    // FOR NOW:: try it without mutually exculisve locks    volatile wxRect  mCurRect;    // state variables    bool   mAnimStarted;    bool   mStopPending;    bool   mPrevInClient;    bool   mCurInClient;    wxRect mPrevRect;public:    int    mMorphDelay;         // delay between frames in miliseconds,     default: 20    int    mMaxFrames;          // number  of iterations for hint morphing, default: 30                                // (morph duration = mMorphDelay * mMaxFrames msec)    int    mInClientHintBorder; // default: 4 pixels    bool   mAccelerationOn;     // true, if morph accelerates, otherwise morph                                // speed is constant. Default: true    // TBD:: get/set methods for above membersprotected:        // Internal function for starting tracking.    void StartTracking();        // Internal function for drawing a hint rectangle.    void DrawHintRect ( wxRect& rect, bool isInClientRect);        // Internal function for erasing a hint rectangle.    void EraseHintRect( wxRect& rect, bool isInClientRect);        // Internal function for finishing tracking.    void FinishTracking();        // Internal function for drawing a hint rectangle.    void DoDrawHintRect( wxRect& rect, bool isInClientRect);        // Internal function for translating coordinates.    void RectToScr( wxRect& frameRect, wxRect& scrRect );public:        // Default constructor.    cbHintAnimationPlugin();        // Constructor, taking a layout panel and pane mask.    cbHintAnimationPlugin( wxFrameLayout* pPanel, int paneMask = wxALL_PANES );        // Destructor.    ~cbHintAnimationPlugin();        // Event handler respoding to hint draw events.    void OnDrawHintRect( cbDrawHintRectEvent& event );    DECLARE_EVENT_TABLE()};/*A private helper class.*/struct WXDLLIMPEXP_FL MorphInfoT{    wxPoint mFrom;    wxPoint mTill;};/*A private helper class.*/class WXDLLIMPEXP_FL cbHintAnimTimer : public wxTimer {protected:    friend class cbHintAnimationPlugin;    wxRect      mPrevMorphed;    MorphInfoT  mUpperLeft;    MorphInfoT  mLowerRight;    int         mCurIter;    long        mLock;    cbHintAnimationPlugin* mpPl;    void MorphPoint( wxPoint& origin, MorphInfoT& info, wxPoint& point );public:     cbHintAnimTimer(void);    virtual void Notify(void);    virtual bool Init( cbHintAnimationPlugin* pAnimPl, bool reinit );};#endif /* __HINTANIMPL_G__ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -