1 // TortoiseGit - a Windows shell extension for easy version control
3 // Copyright (C) 2008-2011 - 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.
25 class CPropertiesToolBar
: public CMFCToolBar
28 virtual void OnUpdateCmdUI(CFrameWnd
* /*pTarget*/, BOOL bDisableIfNoHndler
)
30 CMFCToolBar::OnUpdateCmdUI((CFrameWnd
*) GetOwner(), bDisableIfNoHndler
);
33 virtual BOOL
AllowShowOnList() const { return FALSE
; }
36 class CPropertiesWnd
: public CDockablePane
46 void SetVSDotNetLook(BOOL bSet
)
48 m_wndPropList
.SetVSDotNetLook(bSet
);
49 m_wndPropList
.SetGroupNameFullWidth(bSet
);
52 // rev=NULL, means clear properties info;
53 void UpdateProperties(GitRev
*rev
=NULL
);
57 CPropertiesToolBar m_wndToolBar
;
58 CMFCPropertyGridCtrl m_wndPropList
;
63 virtual ~CPropertiesWnd();
66 afx_msg
int OnCreate(LPCREATESTRUCT lpCreateStruct
);
67 afx_msg
void OnSize(UINT nType
, int cx
, int cy
);
68 afx_msg
void OnExpandAllProperties();
69 afx_msg
void OnUpdateExpandAllProperties(CCmdUI
* pCmdUI
);
70 afx_msg
void OnSortProperties();
71 afx_msg
void OnUpdateSortProperties(CCmdUI
* pCmdUI
);
72 afx_msg
void OnSetFocus(CWnd
* pOldWnd
);
73 afx_msg
void OnSettingChange(UINT uFlags
, LPCTSTR lpszSection
);
78 void SetPropListFont();
80 CMFCPropertyGridProperty
* m_CommitHash
;
81 CMFCPropertyGridProperty
* m_AuthorName
;
82 CMFCPropertyGridProperty
* m_AuthorDate
;
83 CMFCPropertyGridProperty
* m_AuthorEmail
;
85 CMFCPropertyGridProperty
* m_CommitterName
;
86 CMFCPropertyGridProperty
* m_CommitterEmail
;
87 CMFCPropertyGridProperty
* m_CommitterDate
;
89 CMFCPropertyGridProperty
* m_Subject
;
90 CMFCPropertyGridProperty
* m_Body
;
92 CMFCPropertyGridProperty
* m_ParentGroup
;
93 CMFCPropertyGridProperty
* m_BaseInfoGroup
;
95 std::vector
<CMFCPropertyGridProperty
*> m_ParentHash
;
96 std::vector
<CMFCPropertyGridProperty
*> m_ParentSubject
;