1
// TortoiseGit - a Windows shell extension for easy version control
3 // Copyright (C) 2008, 2011-2018, 2020 - TortoiseGit
4 // Copyright (C) 2003-2006,2008 - Stefan Kueng
6 // This program is free software; you can redistribute it and/or
7 // modify it under the terms of the GNU General Public License
8 // as published by the Free Software Foundation; either version 2
9 // of the License, or (at your option) any later version.
11 // This program is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 // GNU General Public License for more details.
16 // You should have received a copy of the GNU General Public License
17 // along with this program; if not, write to the Free Software Foundation,
18 // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
22 #include "StandAloneDlg.h"
24 #include "MenuButton.h"
26 #include "GitStatusListCtrl.h"
29 * \ingroup TortoiseProc
30 * Shows the "check for modifications" dialog.
32 class CChangedDlg
: public CResizableStandAloneDialog
34 DECLARE_DYNAMIC(CChangedDlg
)
37 CChangedDlg(CWnd
* pParent
= nullptr); // standard constructor
38 virtual ~CChangedDlg();
41 enum { IDD
= IDD_CHANGEDFILES
};
44 virtual void DoDataExchange(CDataExchange
* pDX
) override
; // DDX/DDV support
45 virtual BOOL
OnInitDialog() override
;
46 virtual void OnOK() override
;
47 virtual void OnCancel() override
;
48 virtual BOOL
PreTranslateMessage(MSG
* pMsg
) override
;
49 afx_msg
void OnBnClickedRefresh();
50 afx_msg
void OnBnClickedCommit();
51 afx_msg
void OnBnClickedStash();
52 afx_msg
void OnBnClickedButtonUnifieddiff();
53 afx_msg
void OnBnClickedShowunversioned();
54 afx_msg
void OnBnClickedShowUnmodified();
55 afx_msg
void OnBnClickedShowignored();
56 afx_msg
void OnBnClickedShowlocalchangesignored();
57 afx_msg
void OnBnClickedWholeProject();
58 afx_msg
void OnBnClickedShowStaged();
59 afx_msg LRESULT
OnSVNStatusListCtrlNeedsRefresh(WPARAM
, LPARAM
);
60 afx_msg LRESULT
OnSVNStatusListCtrlItemCountChanged(WPARAM
, LPARAM
);
61 afx_msg
void OnNMClickBranchLink(NMHDR
* pNMHDR
, LRESULT
* pResult
);
66 CMenuButton m_ctrlStash
;
67 static UINT
ChangedStatusThreadEntry(LPVOID pVoid
);
68 UINT
ChangedStatusThread();
69 void UpdateStatistics();
70 DWORD
UpdateShowFlags();
75 // needs to start with 1, since 0 is the return value if *nothing* is clicked on in the context menu
83 CTGitPathList m_pathList
;
86 CRegDWORD m_regAddBeforeCommit
;
87 CRegDWORD m_regShowWholeProject
;
88 CRegDWORD m_regShowStaged
;
89 CLinkCtrl m_BranchLink
;
90 CGitStatusListCtrl m_FileListCtrl
;
92 BOOL m_bShowUnversioned
;
93 int m_iShowUnmodified
;
94 BOOL m_bShowLocalChangesIgnored
;
95 volatile LONG m_bBlock
;