Update OGDF to the latest stable release (v. 2015.05, Baobab)
[TortoiseGit.git] / src / TortoiseGitBlame / PropertiesWnd.h
blob83f79b0abc727a72dc9714334d8fd16bb543cf66
1 // TortoiseGit - a Windows shell extension for easy version control
3 // Copyright (C) 2008-2011, 2015-2017 - TortoiseGit
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.
21 #pragma once
23 #include "GitRevLoglist.h"
24 #include "GestureEnabledControl.h"
26 class CPropertiesToolBar : public CMFCToolBar
28 public:
29 virtual void OnUpdateCmdUI(CFrameWnd* /*pTarget*/, BOOL bDisableIfNoHndler) override
31 CMFCToolBar::OnUpdateCmdUI((CFrameWnd*) GetOwner(), bDisableIfNoHndler);
34 virtual BOOL AllowShowOnList() const override { return FALSE; }
37 class CPropertiesWnd : public CDockablePane
39 // Construction
40 public:
41 CPropertiesWnd();
43 void AdjustLayout();
45 // Attributes
46 public:
47 void SetVSDotNetLook(BOOL bSet)
49 m_wndPropList.SetVSDotNetLook(bSet);
50 m_wndPropList.SetGroupNameFullWidth(bSet);
53 // rev=nullptr, means clear properties info;
54 void UpdateProperties(GitRevLoglist* rev = nullptr);
56 protected:
57 CFont m_fntPropList;
58 CGestureEnabledControlTmpl<CMFCPropertyGridCtrl> m_wndPropList;
60 void RemoveParent();
61 // Implementation
62 public:
63 virtual ~CPropertiesWnd();
65 protected:
66 afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
67 afx_msg void OnSize(UINT nType, int cx, int cy);
68 afx_msg void OnSetFocus(CWnd* pOldWnd);
69 afx_msg void OnSettingChange(UINT uFlags, LPCTSTR lpszSection);
70 afx_msg void OnContextMenu(CWnd* pWnd, CPoint point);
72 DECLARE_MESSAGE_MAP()
74 void InitPropList();
75 void SetPropListFont();
77 CMFCPropertyGridProperty* m_CommitHash;
78 CMFCPropertyGridProperty* m_AuthorName;
79 CMFCPropertyGridProperty* m_AuthorDate;
80 CMFCPropertyGridProperty* m_AuthorEmail;
82 CMFCPropertyGridProperty* m_CommitterName;
83 CMFCPropertyGridProperty* m_CommitterEmail;
84 CMFCPropertyGridProperty* m_CommitterDate;
86 CMFCPropertyGridProperty* m_Subject;
87 CMFCPropertyGridProperty* m_Body;
89 CMFCPropertyGridProperty* m_ParentGroup;
90 CMFCPropertyGridProperty* m_BaseInfoGroup;
92 std::vector<CMFCPropertyGridProperty*> m_ParentHash;
93 std::vector<CMFCPropertyGridProperty*> m_ParentSubject;