// DialogClass.cpp : implementation file
//

#include "stdafx.h"
#include "DiskInfoAplet.h"
#include "DialogClass.h"
#include "PanelZInformacjamiODysku.h"


// CDialogClass dialog

IMPLEMENT_DYNAMIC(CDialogClass, CDialog)

CDialogClass::CDialogClass(CWnd* pParent /*=NULL*/)
	: CDialog(CDialogClass::IDD, pParent)
{

}

CDialogClass::~CDialogClass()
{
}

void CDialogClass::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
}


BEGIN_MESSAGE_MAP(CDialogClass, CDialog)
END_MESSAGE_MAP()


// CDialogClass message handlers

BOOL CDialogClass::OnInitDialog()
{
	CDialog::OnInitDialog();

	//przygotowanie paneli
	const int przes = 10, wys = 30;
	int iloscPaneli = 0;
	CRect clientRect;
	GetClientRect(clientRect);
	PanelZInformacjamiODysku *panel;
   
	for(char litera = 'c'; litera <= 'z'; litera++)
	{
		panel = new PanelZInformacjamiODysku(litera);   
		if(panel->Informacje.czyDyskDostepny)
		{      
			panel->Create(WS_CHILD | WS_VISIBLE, clientRect, this, iloscPaneli);
			panel->MoveWindow(przes, przes + iloscPaneli * (wys + przes), clientRect.Width() - 2*przes, wys);
			iloscPaneli++;
		}
		else delete panel;
	}
   
	// Dopasowanie wysokości okna dialogowego do ilości paneli
	int newHeight = (iloscPaneli+1) * (wys + przes);
	SetWindowPos(NULL, clientRect.left, clientRect.bottom, clientRect.Width(), newHeight, SWP_SHOWWINDOW);

	return TRUE;  // return TRUE  unless you set the focus to a control
}