RUniforme::RUniforme(QWidget *parent, Imagen image) : QWidget(parent), ui(new Ui::RUniforme) { ui->setupUi(this); setValues(image); connect(ui->ButtonCancelar, SIGNAL(clicked()), this, SLOT(cancelar())); connect(ui->ButtonAceptar, SIGNAL(clicked()), this, SLOT(aceptar())); //cambios de spinbox cambian imagen directamente connect(ui->doubleSpinBoxP, SIGNAL(editingFinished()), this, SLOT(cambiarImagen())); connect(ui->spinBoxN1, SIGNAL(editingFinished()), this, SLOT(cambiarImagen())); connect(ui->spinBoxN2, SIGNAL(editingFinished()), this, SLOT(cambiarImagen())); connect(ui->checkBoxHistR, SIGNAL(pressed()), this, SLOT(verHistRuido())); connect(ui->checkBoxImagenR, SIGNAL(pressed()), this, SLOT(verImagenRuido())); connect(ui->spinBoxN1, SIGNAL(editingFinished()), this, SLOT(comprobarRango())); connect(ui->spinBoxN2, SIGNAL(editingFinished()), this, SLOT(comprobarRango())); //cambiarImagen(); //por defecto ya se ve un ruido hecho //emit(changed()); }
void VentanaPrincipal::comparadorCeldas() { if (dosUltimas.size()==0) // si es nula entonces asigne { dosUltimas.push_back(clickedButton); std::cout << "Tiene 0" << std::endl; } else if(dosUltimas.size()==1) { dosUltimas.push_back(clickedButton); } else if(dosUltimas.size()==2) { std::cout << "Tiene 2" << std::endl; if((dosUltimas.at(0))->nomb == dosUltimas.at(1)->nomb && dosUltimas.at(0)->id != dosUltimas.at(1)->id) //ya que las parejas son iguales, entonces.... { dosUltimas.at(0)->setPixmap(*pixMaps[nul]); dosUltimas.at(1)->setPixmap(*pixMaps[nul]); dosUltimas.at(0)->nomb= tr("%1").arg(nul); dosUltimas.at(1)->nomb= tr("%1").arg(nul); std::cout << "Son iguales" << std::endl; numeroParejas--; objControlador->asignarPuntajeJugador(10); if(numeroParejas==0) { bool ok; QString ganador = QInputDialog::getText(this, tr("Ganador"), tr("Has ganado en %1 segundos \n Jugador:").arg(objControlador->tiempoTotal()), QLineEdit::Normal,"", &ok); objControlador->asignarNombreJugador(ganador.toStdString()); } } else { cambiarImagen(0, dosUltimas.at(0)); cambiarImagen(0, dosUltimas.at(1)); dosUltimas.at(0)->hasidoClickeada = false; dosUltimas.at(1)->hasidoClickeada = false; std::cout << "Son distintas" << std::endl; objControlador->siguienteJugador(); turno= (turno+1)%numerojugadores; } bool nueva = (clickedButton->id != dosUltimas.at(0)->id && clickedButton->id != dosUltimas.at(1)->id); dosUltimas.clear(); if(nueva) dosUltimas.push_back(clickedButton); labelTurno->setText(tr("Turno de %1").arg(turno+1)); }else{std::cout << "Error" << std::endl;} }
void Mesa::ctxMenu(const QPoint &pos) { QMenu *menu = new QMenu; menu->addAction(tr("Cambiar imagen"), this, SLOT(cambiarImagen())); menu->addAction(tr("Cambiar nombre"), this, SLOT(cambiarNombre())); menu->addAction(tr("Abrir Mesa"), this, SLOT(abrirMesa())); menu->addAction(tr("Aumentar Escala"), this, SLOT(abrirMesa())); menu->addAction(tr("Disminuir Escala"), this, SLOT(abrirMesa())); menu->exec(mapToGlobal(pos)); }
void VentanaPrincipal::manejadorBoton() { clickedButton = qobject_cast<Celda *>(sender()); int a = (clickedButton->nomb).toInt(); // numero correspondiente a la pareja if(a!=nul) { if(clickedButton->hasidoClickeada && dosUltimas.size()==1) { cambiarImagen(0, clickedButton); clickedButton->hasidoClickeada = false; dosUltimas.clear(); std::cout << "Click sobre si misma" << std::endl; }else{ cambiarImagen(a, clickedButton); clickedButton->hasidoClickeada = true; comparadorCeldas(); std::cout << "Click sobre otra" << std::endl; } } }