You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			42 lines
		
	
	
		
			845 B
		
	
	
	
		
			C++
		
	
			
		
		
	
	
			42 lines
		
	
	
		
			845 B
		
	
	
	
		
			C++
		
	
#include "formdialog.h"
 | 
						|
#include "ui_formdialog.h"
 | 
						|
#include <QMessageBox>
 | 
						|
 | 
						|
FormDialog::FormDialog(QWidget *parent) :
 | 
						|
    QDialog(parent),
 | 
						|
    ui(new Ui::FormDialog)
 | 
						|
{
 | 
						|
    ui->setupUi(this);
 | 
						|
    m_formSet = false;
 | 
						|
    m_form = NULL;
 | 
						|
}
 | 
						|
 | 
						|
FormDialog::~FormDialog()
 | 
						|
{
 | 
						|
    delete ui;
 | 
						|
}
 | 
						|
 | 
						|
void FormDialog::setForm(IForm *formWidget)
 | 
						|
{
 | 
						|
    if (m_form == NULL)
 | 
						|
    {
 | 
						|
        ui->verticalLayout->addWidget(formWidget);
 | 
						|
        m_form = formWidget;
 | 
						|
        connect(m_form, SIGNAL(validationError(QString)), this, SLOT(onValidationError(QString)));
 | 
						|
        setGeometry(formWidget->geometry());
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
void FormDialog::onValidationError(const QString &message)
 | 
						|
{
 | 
						|
    QMessageBox::critical(this, tr("Validation error"), tr(message.toStdString().c_str()));
 | 
						|
}
 | 
						|
 | 
						|
void FormDialog::accept()
 | 
						|
{
 | 
						|
    if (m_form->saveRecord())
 | 
						|
    {
 | 
						|
        QDialog::accept();
 | 
						|
    }
 | 
						|
}
 |