void frmBoxes::changebox(int index) { int box = index; frmCurBoxNum = index; frmCurBox = &(cursavblock->boxes[box]); QGraphicsScene * boxscene = new QGraphicsScene(); for(int bslot = 0; bslot < 30; bslot++) { pix = QPixmap(); if(cursavblock->boxes[box].pokemon[bslot].species != Species::NOTHING) { pix = getpkmicon(cursavblock->boxes[box].pokemon[bslot]); } boxscene = new QGraphicsScene(); boxscene->addPixmap(pix); boxgraphics[bslot]->setScene(boxscene); boxgraphics[bslot]->installEventFilter(mouseEventEater); } if(ui->cbBoxes->currentIndex() != index) { ui->cbBoxes->setCurrentIndex(index); } if(ui->sbBoxIncrem->value() != index) { ui->sbBoxIncrem->setValue(index); } QPixmap * wallpaperpixmap = new QPixmap; *wallpaperpixmap = getwallpaperimage(cursavblock->boxwallpapers[box]); QGraphicsScene * wallpaperscene = new QGraphicsScene; wallpaperscene->addPixmap(*wallpaperpixmap); ui->pbPCBox->setScene(wallpaperscene); ui->pbPCBox->setSceneRect(0,0,192,160); ui->pbPCBox->fitInView(0,0,153,111); }
void frmBoxes::changebox(int index) { int box = index; refreshboxgrid(frmCurBoxNum); frmCurBoxNum = index; frmCurBox = &(cursavblock->boxes[box]); for(int bslot = 0; bslot < 30; bslot++) { pix = QPixmap(); if(cursavblock->boxes[box].pokemon[bslot].species != Species::NOTHING) { pix = getpkmicon(cursavblock->boxes[box].pokemon[bslot]); } QGraphicsScene * boxscene = boxgraphics[bslot]->scene(); if (boxscene == NULL) { boxscene = new QGraphicsScene(); boxgraphics[bslot]->setScene(boxscene); boxgraphics[bslot]->installEventFilter(mouseEventEater); } boxscene->clear(); boxscene->addPixmap(pix); } if(ui->cbBoxes->currentIndex() != index) { ui->cbBoxes->setCurrentIndex(index); } if(ui->sbBoxIncrem->value() != index) { ui->sbBoxIncrem->setValue(index); } QPixmap wallpaperpixmap = getwallpaperimage(cursavblock->boxwallpapers[box]); QGraphicsScene * wallpaperscene = ui->pbPCBox->scene(); if (wallpaperscene == NULL) { wallpaperscene = new QGraphicsScene; ui->pbPCBox->setScene(wallpaperscene); ui->pbPCBox->setSceneRect(0,0,192,160); ui->pbPCBox->fitInView(0,0,153,111); } wallpaperscene->clear(); wallpaperscene->addPixmap(wallpaperpixmap); for(int box = 0; box < 24; box++) { boxpreviewgraphics[box]->setFrameStyle(0); } ui->saBoxes->verticalScrollBar()->setValue(index * 76); boxpreviewgraphics[index]->setFrameStyle(1); }
void pkmviewer::on_btnSaveChanges_clicked() { calcchecksum(temppkm); *pkm = *temppkm; if(getpkmformname(pkm) == "") { pkm->forms.form = 0; } this->setWindowTitle(QString::fromStdWString(getpkmnickname(temppkm))); if((frmCurBoxNum == startbox) || ispartypkm) { QPixmap * iconpixmap = new QPixmap(); QGraphicsScene * iconscene = new QGraphicsScene(); *iconpixmap = getpkmicon(temppkm); iconscene->addPixmap(*iconpixmap); QGraphicsView * theView = new QGraphicsView; theView = (QGraphicsView*)theSlot; theView->setScene(iconscene); } if(redisplayok) { pkmviewer::displayPKM(); } }
void frmBoxes::on_actionLoad_SAV_triggered() { SaveFileName = QFileDialog::getOpenFileName(this,tr("Load a save file"),tr(""),tr("Save Files (*.sav *.dsv)")); if(SaveFileName != "") { boxViewer = this; SavDecrypted = false; read(SaveFileName.toStdString().c_str(),sav); cursavblock = &(sav->cur); baksavblock = &(sav->bak); this->setWindowTitle(wTitle + QString::fromStdString(" - ") + QString::fromStdWString(getsavtrainername(cursavblock))); // QString::fromStdWString(getwstring(cursavblock->trainername))); QGraphicsScene * partyscene = new QGraphicsScene(); for(int i = 0; i < 6; i++) { pix = QPixmap(); partyscene = new QGraphicsScene(); partyscene->addPixmap(pix); partygraphics[i]->setScene(partyscene); } for(uint32 pslot = 0; pslot < cursavblock->party.size; pslot++) { decryptpkm(&(cursavblock->party.pokemon[pslot])); pix = getpkmicon(cursavblock->party.pokemon[pslot].pkm_data); partyscene = new QGraphicsScene(); partyscene->addPixmap(pix); partygraphics[pslot]->setScene(partyscene); partygraphics[pslot]->installEventFilter(mouseEventEater); } if(ui->cbBoxes->count() == 0) { for(int i = 0; i < 24; i++) { ui->cbBoxes->addItem(""); } } for(int boxnum = 0; boxnum < 24; boxnum++) { ui->cbBoxes->setItemText(boxnum,QString::fromStdWString(getwstring(cursavblock->boxnames[boxnum]))); for(int boxslot = 0; boxslot < 30; boxslot++) { decryptpkm(&(cursavblock->boxes[boxnum].pokemon[boxslot])); // decryptpkm(&(baksavblock->boxes[boxnum].pokemon[boxslot])); } } SavDecrypted = true; ui->sbBoxIncrem->setEnabled(true); ui->sbBoxIncrem->setVisible(true); ui->saBoxes->setEnabled(true); ui->saBoxes->setVisible(true); ui->cbBoxes->setEnabled(true); ui->sbBoxIncrem->setValue(cursavblock->curbox); frmParty = &(cursavblock->party); for(int ic = 0; ic < 24; ic++) { boxpreviewgraphics[ic]->installEventFilter(mouseEventEater); boxpreviewgraphics[ic]->viewport()->setMouseTracking(true); boxpreviewgraphics[ic]->viewport()->setProperty("Index",ic); boxpreviewgraphics[ic]->viewport()->installEventFilter(mouseEventEater); } refreshboxgrids(); changebox(cursavblock->curbox); } }