Allow to move item past last item
[TortoiseGit.git] / src / Utils / MiscUI / LinkControl.h
blob5e7d9d8670e747756796eb2843f1d68a2ccda24d
1 // TortoiseGit - a Windows shell extension for easy version control
3 // Copyright (C) 2009, 2012, 2015-2016 - TortoiseSVN
5 // This program is free software; you can redistribute it and/or
6 // modify it under the terms of the GNU General Public License
7 // as published by the Free Software Foundation; either version 2
8 // of the License, or (at your option) any later version.
10 // This program is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU General Public License for more details.
15 // You should have received a copy of the GNU General Public License
16 // along with this program; if not, write to the Free Software Foundation,
17 // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
19 #pragma once
20 #include <Windows.h>
22 class CLinkControl : public CStatic
24 public:
25 CLinkControl(void);
26 virtual ~CLinkControl(void);
28 static const UINT LK_LINKITEMCLICKED;
30 protected:
31 virtual void PreSubclassWindow();
32 virtual BOOL OnWndMsg(UINT message, WPARAM wParam, LPARAM lParam, LRESULT* pResult);
34 private:
35 HCURSOR m_hLinkCursor; // Cursor for hyperlink
36 CFont m_UnderlineFont; // Font for underline display
37 CFont m_NormalFont; // Font for default display
38 bool m_bOverControl; // cursor over control?
40 void DrawFocusRect();
41 void ClearFocusRect();
42 void NotifyParent(UINT msg);
44 protected:
45 afx_msg BOOL OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message);
46 afx_msg void OnMouseMove(UINT nFlags, CPoint point);
47 afx_msg void OnCaptureChanged(CWnd *pWnd);
48 afx_msg void OnSetFocus(CWnd* pOldWnd);
49 afx_msg void OnKillFocus(CWnd* pNewWnd);
50 afx_msg UINT OnGetDlgCode();
51 afx_msg void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
52 afx_msg void OnClicked();
53 afx_msg void OnEnable(BOOL enabled);
55 DECLARE_MESSAGE_MAP()