Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Диаметр множества / src / GenerateDialog

.cpp
Скачиваний:
22
Добавлен:
01.05.2014
Размер:
2.65 Кб
Скачать
// GenerateDialog.cpp : implementation file
//

#include "stdafx.h"
#include "Diameter.h"
#include "GenerateDialog.h"

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

/////////////////////////////////////////////////////////////////////////////
// CGenerateDialog dialog


CGenerateDialog::CGenerateDialog(CWnd* pParent /*=NULL*/)
	: CDialog(CGenerateDialog::IDD, pParent)
{
	//{{AFX_DATA_INIT(CGenerateDialog)
	mHeight = _T("");
	mWidth = _T("");
	mType = -1;
	mPoints = _T("");
	mRing = _T("");
	mX = _T("");
	mY = _T("");
	//}}AFX_DATA_INIT
	mHeight="300";mWidth="300";
	mType=0;mPoints="100";mRing="100";
	mX="0";mY="0";
}


void CGenerateDialog::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CGenerateDialog)
	DDX_Text(pDX, IDC_EDIT_H, mHeight);
	DDX_Text(pDX, IDC_EDIT_W, mWidth);
	DDX_CBIndex(pDX, IDC_COMBO_TYPE, mType);
	DDX_Text(pDX, IDC_POINTS, mPoints);
	DDX_Text(pDX, IDC_EDIT_RING, mRing);
	DDX_Text(pDX, IDC_EDITX, mX);
	DDX_Text(pDX, IDC_EDITY, mY);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CGenerateDialog, CDialog)
	//{{AFX_MSG_MAP(CGenerateDialog)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CGenerateDialog message handlers

void CGenerateDialog::OnOK() 
{
	// TODO: Add extra validation here
	UpdateData();
	int w=atoi(mWidth);
	int h=atoi(mHeight);
	int rg=atoi(mRing);
	int p=atoi(mPoints);
	int lx=atoi(mX);
	int ly=atoi(mY);
	int t=mType;

	if ((w<1)||(w>2000))
	{
		AfxMessageBox("Ширина области должна быть не меньше 1 и не больше 2000!",16);
		return;
	}
	if ((h<1)||(h>2000))
	{
		AfxMessageBox("Высота области должна быть не меньше 1 и не больше 2000!",16);
		return;
	}
	if ((rg<1)||(rg>100))
	{
		AfxMessageBox("Ширина кольца должна быть не меньше 1% и не больше 100%!",16);
		return;
	}
	if ((lx<0)||(lx>=2000))
	{
		AfxMessageBox("Левая граница области должна быть не меньше 0 и меньше 2000!",16);
		return;
	}
	if ((ly<0)||(ly>=2000))
	{
		AfxMessageBox("Верхняя граница области должна быть не меньше 0 и меньше 2000!",16);
		return;
	}
	if ((lx+w<1)||(lx+w>2000))
	{
		AfxMessageBox("Правая граница области должна быть не меньше 1 и не больше 2000!",16);
		return;
	}
	if ((ly+h<1)||(ly+h>2000))
	{
		AfxMessageBox("Нижняя граница области должна быть не меньше 1 и не больше 2000!",16);
		return;
	}
	if ((p<1)||(p>1000))
	{
		AfxMessageBox("Число точек должно быть не меньше 1 и не больше 1000!",16);
		return;
	}

	CDialog::OnOK();
}
Соседние файлы в папке src