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

#include "stdafx.h"
#include "CHRealTime.h"
#include "RingGenerate.h"

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

/////////////////////////////////////////////////////////////////////////////
// CRingGenerate dialog


CRingGenerate::CRingGenerate(CWnd* pParent /*=NULL*/)
	: CDialog(CRingGenerate::IDD, pParent)
{
	//{{AFX_DATA_INIT(CRingGenerate)
	m_tolsh = 10;
	m_min = 20;
	m_max = 120;
	m_prir = 2;
	m_poiints = 10;
	//}}AFX_DATA_INIT
}

CRingGenerate::CRingGenerate(int m_iMinR,int m_iMaxR,int m_iWid,int m_iStep,int m_iNumPoints)
	: CDialog(CRingGenerate::IDD, NULL)
{
	//{{AFX_DATA_INIT(CRingGenerate)
	m_tolsh = m_iWid;
	m_min = m_iMinR;
	m_max = m_iMaxR;
	m_prir = m_iStep;
	m_poiints = m_iNumPoints;
	//}}AFX_DATA_INIT
}


void CRingGenerate::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CRingGenerate)
	DDX_Text(pDX, IDC_EDIT4, m_tolsh);
	DDV_MinMaxInt(pDX, m_tolsh, 0, 100);
	DDX_Text(pDX, IDC_EDIT2, m_min);
	DDV_MinMaxInt(pDX, m_min, 20, 170);
	DDX_Text(pDX, IDC_EDIT3, m_max);
	DDV_MinMaxInt(pDX, m_max, 20, 170);
	DDX_Text(pDX, IDC_EDIT5, m_prir);
	DDV_MinMaxInt(pDX, m_prir, 1, 10);
	DDX_Text(pDX, IDC_EDIT6, m_poiints);
	DDV_MinMaxInt(pDX, m_poiints, 1, 200);
	//}}AFX_DATA_MAP
}


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

/////////////////////////////////////////////////////////////////////////////
// CRingGenerate message handlers

BOOL CRingGenerate::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	CEdit *ed=(CEdit*)this->GetDlgItem(IDC_EDIT2);
	CSpinButtonCtrl *sp=(CSpinButtonCtrl*)this->GetDlgItem(IDC_SPIN1);
	sp->SetBuddy(ed);
//	ed->SetWindowText("20");
	sp->SetRange(20,170);

	CEdit *ed1=(CEdit*)this->GetDlgItem(IDC_EDIT3);
	CSpinButtonCtrl *sp1=(CSpinButtonCtrl*)this->GetDlgItem(IDC_SPIN2);
	sp1->SetBuddy(ed1);
//	ed1->SetWindowText("120");
	sp1->SetRange(20,170);

	CEdit *ed2=(CEdit*)this->GetDlgItem(IDC_EDIT4);
	CSpinButtonCtrl *sp2=(CSpinButtonCtrl*)this->GetDlgItem(IDC_SPIN3);
	sp2->SetBuddy(ed2);
//	ed2->SetWindowText("10");
	sp2->SetRange(0,100);

	CEdit *ed3=(CEdit*)this->GetDlgItem(IDC_EDIT5);
	CSpinButtonCtrl *sp3=(CSpinButtonCtrl*)this->GetDlgItem(IDC_SPIN4);
	sp3->SetBuddy(ed3);
//	ed3->SetWindowText("2");
	sp3->SetRange(1,10);

	CEdit *ed4=(CEdit*)this->GetDlgItem(IDC_EDIT6);
	CSpinButtonCtrl *sp4=(CSpinButtonCtrl*)this->GetDlgItem(IDC_SPIN5);
	sp4->SetBuddy(ed4);
//	ed4->SetWindowText("10");
	sp4->SetRange(1,200);
	

	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void CRingGenerate::OnCancel() 
{
	// TODO: Add extra cleanup here
	
	CDialog::OnCancel();
}

void CRingGenerate::OnOK() 
{
	// TODO: Add extra validation here
	CEdit *ed=(CEdit*)this->GetDlgItem(IDC_EDIT2);
	CString str;
	ed->GetWindowText(str);
	int min = atoi(str);
	CEdit *ed1=(CEdit*)this->GetDlgItem(IDC_EDIT3);
	ed1->GetWindowText(str);
	int max = atoi(str);
	CEdit *ed2=(CEdit*)this->GetDlgItem(IDC_EDIT6);
	ed2->GetWindowText(str);
	int num = atoi(str);

	if (min > max)
	{
		AfxMessageBox("Значение минимального внешнего радиуса\n не должно превышать значение максимального!");
		return;
	}
	if (num > /*max-min+30*/200)
	{
		char buf[300];
		sprintf(buf,"Слишком много точек.\nВведите значение от 1 до 200!"/*,max-min+30*/);
		AfxMessageBox(buf);
		return;
	}
	CDialog::OnOK();
}
Соседние файлы в папке Source