Initial commit
This commit is contained in:
@@ -0,0 +1,62 @@
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
#ifndef UpDownUnitH
|
||||
#define UpDownUnitH
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
#define STATE_NORMAL 0
|
||||
#define STATE_HIGHLIGHT 1
|
||||
#define STATE_PUSH 2
|
||||
|
||||
#define ORIENTATION_LEFT 0
|
||||
#define ORIENTATIONRIGHT 1
|
||||
#define ORIENTATION_NONE 2
|
||||
#define ORIENTATION_ALL 3
|
||||
|
||||
#define SPEED_MIN 50
|
||||
#define SPEED_MAX 200
|
||||
|
||||
#define TIME_DELAY 200
|
||||
//---------------------------------------------------------------------------
|
||||
namespace UpDownUnit{
|
||||
|
||||
class TUpDown: public Vcl::Comctrls::TUpDown
|
||||
{
|
||||
private:
|
||||
MESSAGE void __fastcall WMPaint(Winapi::Messages::TWMPaint &Message);
|
||||
MESSAGE void __fastcall WMLButtonDown(TWMMouse &Message);
|
||||
MESSAGE void __fastcall WMLButtonUp(TWMMouse &Message);
|
||||
MESSAGE void __fastcall WMMouseMove(TWMMouse &Message);
|
||||
MESSAGE void __fastcall CMMouseLeave(TMessage &Message);
|
||||
|
||||
BEGIN_MESSAGE_MAP
|
||||
MESSAGE_HANDLER(WM_PAINT, TWMPaint, WMPaint)
|
||||
MESSAGE_HANDLER(WM_LBUTTONDOWN, TWMLButtonDown, WMLButtonDown)
|
||||
MESSAGE_HANDLER(WM_LBUTTONUP, TWMLButtonUp, WMLButtonUp)
|
||||
MESSAGE_HANDLER(WM_MOUSEMOVE, TWMMouseMove, WMMouseMove)
|
||||
MESSAGE_HANDLER(CM_MOUSELEAVE, TMessage, CMMouseLeave)
|
||||
END_MESSAGE_MAP(Vcl::Comctrls::TUpDown)
|
||||
|
||||
protected:
|
||||
virtual void __fastcall PaintWindow(HDC DC);
|
||||
|
||||
private:
|
||||
TCanvas *m_pCanvas;
|
||||
TTimer *m_pTimer;
|
||||
|
||||
bool m_iDown;
|
||||
int m_iCurOrentation,m_iPreOrentation;
|
||||
|
||||
void __fastcall Draw(int iState, int iOrentation=ORIENTATION_ALL);
|
||||
int __fastcall HitTest(int x, int y);
|
||||
void __fastcall TimerProc(TObject* Sender);
|
||||
|
||||
public:
|
||||
__fastcall virtual TUpDown(System::Classes::TComponent* AOwner);
|
||||
__fastcall ~TUpDown();
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
using namespace UpDownUnit;
|
||||
#endif
|
||||
Reference in New Issue
Block a user