/********************************************************************/
/* Copyright (c) 2019 System fugen G.K. and Yuzi Mizuno          */
/* All rights reserved.                                             */
/********************************************************************/
/********************************************************************/
// ChildFrm.cpp : CChildFrame クラスの動作の定義を行います。

#include "stdafx.h"
#include "ChildFrm.h"
#include "Misc/UserPreference.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CChildFrame

IMPLEMENT_DYNCREATE(CChildFrame, CMDIChildWnd)

BEGIN_MESSAGE_MAP(CChildFrame, CMDIChildWnd)
	//{{AFX_MSG_MAP(CChildFrame)
	ON_WM_CLOSE()
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CChildFrame クラスの構築/消滅

CChildFrame::CChildFrame(){
}

CChildFrame::~CChildFrame(){
}

void CChildFrame::OnClose(){
	// 最大化フラグ更新
	UserPreference& pref = UserPreference::getInstance();
	const DWORD dwStyle = GetStyle();
	const DWORD dwFlags = WS_MAXIMIZE;
	const bool bMaximize = ((dwStyle & dwFlags) == dwFlags);
	pref.SetBoolValue(upv_Window_InitChildMaximum, bMaximize);

	CMDIChildWnd::OnClose();
}

BOOL CChildFrame::PreCreateWindow(CREATESTRUCT& cs){
	if(!CMDIChildWnd::PreCreateWindow(cs))
		return FALSE;

	cs.style &= ~FWS_ADDTOTITLE;

	UserPreference& pref = UserPreference::getInstance();
	if(pref.GetBoolValue(upv_Window_InitChildMaximum)){
		cs.style |= WS_VISIBLE | WS_MAXIMIZE;
	}

	return TRUE;
}

/////////////////////////////////////////////////////////////////////////////
// CChildFrame クラスの診断

#ifdef _DEBUG
void CChildFrame::AssertValid() const{
	CMDIChildWnd::AssertValid();
}

void CChildFrame::Dump(CDumpContext& dc) const{
	CMDIChildWnd::Dump(dc);
}

#endif //_DEBUG
