Fixed issue #1507: Submodule Diff Dialog should show dirty state only on working...
[TortoiseGit.git] / src / TortoiseMerge / Settings.cpp
blobe02adedde1209404f96f9f5603792f7c1e3c9932
1 // TortoiseMerge - a Diff/Patch program
3 // Copyright (C) 2006 - Stefan Kueng
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 #include "stdafx.h"
20 #include "Settings.h"
21 #include "SetMainPage.h"
22 #include "SetColorPage.h"
24 IMPLEMENT_DYNAMIC(CSettings, CPropertySheet)
25 CSettings::CSettings(UINT nIDCaption, CWnd* pParentWnd, UINT iSelectPage)
26 : CPropertySheet(nIDCaption, pParentWnd, iSelectPage)
27 , m_pMainPage(NULL)
28 , m_pColorPage(NULL)
32 CSettings::CSettings(LPCTSTR pszCaption, CWnd* pParentWnd, UINT iSelectPage)
33 : CPropertySheet(pszCaption, pParentWnd, iSelectPage)
34 , m_pMainPage(NULL)
35 , m_pColorPage(NULL)
37 AddPropPages();
40 CSettings::~CSettings()
42 RemovePropPages();
45 void CSettings::AddPropPages()
47 m_pMainPage = new CSetMainPage();
48 m_pColorPage = new CSetColorPage();
50 AddPage(m_pMainPage);
51 AddPage(m_pColorPage);
54 void CSettings::RemovePropPages()
56 delete m_pMainPage;
57 delete m_pColorPage;
60 void CSettings::SaveData()
62 m_pMainPage->SaveData();
63 m_pColorPage->SaveData();
66 BOOL CSettings::IsReloadNeeded() const
68 BOOL bReload = FALSE;
69 bReload = (m_pMainPage->m_bReloadNeeded || bReload);
70 bReload = (m_pColorPage->m_bReloadNeeded || bReload);
71 return bReload;
74 BEGIN_MESSAGE_MAP(CSettings, CPropertySheet)
75 END_MESSAGE_MAP()
78 // CSettings message handlers
80 BOOL CSettings::OnInitDialog()
82 BOOL bResult = CPropertySheet::OnInitDialog();
83 return bResult;