Esempio n. 1
0
bool CacheHandle::validate(CacheManager* manager)
{
	if (manager == NULL) 
		return false;

	if (_cacheManager == manager)
		return true;

	if (_cacheManager != NULL)
		return false;

	_cacheFrameNo = 0;

	if (!onValidate())
		return false;

	if (manager)
	{
		manager->onHandleValidate(this);
		_cacheManager = manager;
	}

	return true;
}
Esempio n. 2
0
CReservaItem::CReservaItem ( CReserva *_reserva,
                             CSalaList *_salas, CMainWindow *_form ) :
		QDialog ( _form ),
		m_reserva ( _reserva ),
		m_salas ( _salas ),
		m_form ( _form )
{
	setupUi ( this );
	setAttribute ( Qt::WA_DeleteOnClose );

	glayRecorrente = new QGridLayout ( frameRecorrente );
	glayRecorrente->addLayout ( hboxLayout5, 0, 0, 1, 1 );

	QString dow;
#define setDOWCaption(INT) \
		dow = QDate::longDayName( INT ); \
		cbSemanal ## INT ->setText(dow); \
		cbMensalDOW->addItem(dow);

	setDOWCaption ( 1 );
	setDOWCaption ( 2 );
	setDOWCaption ( 3 );
	setDOWCaption ( 4 );
	setDOWCaption ( 5 );
	setDOWCaption ( 6 );
	setDOWCaption ( 7 );

	connect ( this, SIGNAL ( rejected() ), this, SLOT ( cancel() ) );
	connect ( this, SIGNAL ( rejected() ), this, SLOT ( onClose() ) );

	m_list = _reserva->getOwner();
	connect ( okButton, SIGNAL ( clicked() ), this, SLOT ( ok() ) );
	connect ( this, SIGNAL ( accepted() ), this, SLOT ( onClose() ) );

	connect ( teHoraIN, SIGNAL ( timeChanged ( QTime ) ), this, SLOT ( onValidate() ) );
	connect ( teHoraFim, SIGNAL ( timeChanged ( QTime ) ), this, SLOT ( onValidate() ) );
	connect ( leAssunto, SIGNAL ( textChanged ( QString ) ), this, SLOT ( onValidate() ) );
	connect ( cbSala, SIGNAL ( currentIndexChanged ( int ) ), this, SLOT ( onValidate() ) );

	connect ( cbRecorrente, SIGNAL ( clicked() ), this, SLOT ( onValidate() ) );
	connect ( cbSemanal1, SIGNAL ( clicked() ), this, SLOT ( onValidate() ) );
	connect ( cbSemanal2, SIGNAL ( clicked() ), this, SLOT ( onValidate() ) );
	connect ( cbSemanal3, SIGNAL ( clicked() ), this, SLOT ( onValidate() ) );
	connect ( cbSemanal4, SIGNAL ( clicked() ), this, SLOT ( onValidate() ) );
	connect ( cbSemanal5, SIGNAL ( clicked() ), this, SLOT ( onValidate() ) );
	connect ( cbSemanal6, SIGNAL ( clicked() ), this, SLOT ( onValidate() ) );
	connect ( cbSemanal7, SIGNAL ( clicked() ), this, SLOT ( onValidate() ) );
	connect ( deDataTermino, SIGNAL ( dateChanged ( QDate ) ), this, SLOT ( onValidate() ) );

	m_form->setCanRefresh ( false );

	PSala sala;

	CConfig *config = CConfig::getConfig();

	CSalaList::TSalaList::iterator it;
	for ( it = m_salas->m_salas.begin();
	        it != m_salas->m_salas.end();
	        ++it )
	{
		sala = *it;
		if ( ( config->getNivel() == 3 ) || ( config->getUserSalaList()->indexOf ( sala->getSalaID() ) != -1 ) )
			cbSala->addItem ( sala->getNome(), sala->getSalaID() );
	}

	cbSala->setCurrentIndex ( cbSala->findData ( sala->getSalaID() ) );

	teHoraIN->setTime ( m_reserva->getHORAIN() );
	teHoraFim->setTime ( m_reserva->getHORAFIM() );
	leAssunto->setText ( m_reserva->getASSUNTO() );
	leDepto->setText ( m_reserva->getDEPTO() );
	teNotas->document()->setPlainText ( m_reserva->getNOTAS() );

	if ( m_reserva->getTIPO() == 'S' )
		cbRecorrente->setCheckState ( Qt::Unchecked );
	else
		cbRecorrente->setCheckState ( Qt::Checked );

	if ( m_reserva->getTIPO() == 'W' )
	{
		cbSemanal1->setCheckState ( m_reserva->getDOW ( 0 ) ? Qt::Checked : Qt::Unchecked );
		cbSemanal2->setCheckState ( m_reserva->getDOW ( 1 ) ? Qt::Checked : Qt::Unchecked );
		cbSemanal3->setCheckState ( m_reserva->getDOW ( 2 ) ? Qt::Checked : Qt::Unchecked );
		cbSemanal4->setCheckState ( m_reserva->getDOW ( 3 ) ? Qt::Checked : Qt::Unchecked );
		cbSemanal5->setCheckState ( m_reserva->getDOW ( 4 ) ? Qt::Checked : Qt::Unchecked );
		cbSemanal6->setCheckState ( m_reserva->getDOW ( 5 ) ? Qt::Checked : Qt::Unchecked );
		cbSemanal7->setCheckState ( m_reserva->getDOW ( 6 ) ? Qt::Checked : Qt::Unchecked );

		cbSemanalSN->setCheckState ( m_reserva->getREVESA() ? Qt::Checked : Qt::Unchecked );

		deDataTermino->setDate ( m_reserva->getDATAFIM() );
	}
	else
	{
		cbSemanal1->setCheckState ( Qt::Unchecked );
		cbSemanal2->setCheckState ( Qt::Unchecked );
		cbSemanal3->setCheckState ( Qt::Unchecked );
		cbSemanal4->setCheckState ( Qt::Unchecked );
		cbSemanal5->setCheckState ( Qt::Unchecked );
		cbSemanal6->setCheckState ( Qt::Unchecked );
		cbSemanal7->setCheckState ( Qt::Unchecked );

		cbSemanalSN->setCheckState ( Qt::Unchecked );

		deDataTermino->setDate ( QDate::currentDate().addMonths ( 6 ) );
	}

	if ( m_reserva->getRESERVAID() > 0 )
	{
		cbRecorrente->setEnabled ( false );
		cbTipoRecorrencia->setEnabled ( false );
	}
	
	/*
	* TODO: Add ReservaMesal support to Database.
	*/
	cbTipoRecorrencia->setVisible ( false );

	onValidate();
	updateRecorrencia();
}