void WFile::update_tracks() { int i; if (vmd_track_idx(track()) < 0) { // WTF: doesn't work // ui->scroll_area->setWidget(NULL); delete piano(); } while (ui->tracks->count() > file()->tracks) { QLayoutItem *item = ui->tracks->itemAt(ui->tracks->count() - 1); ui->tracks->removeItem(item); delete item->widget(); } for (i = 0; i < ui->tracks->count(); i++) static_cast<WTrack *>(ui->tracks->itemAt(i)->widget())->update_track(); for (i = ui->tracks->count(); i < file()->tracks; i++) ui->tracks->addWidget(new WTrack(this, i)); }
WPiano * WFile::open_track(vmd_track_t *track) { WPiano *prev = piano(); if (prev != NULL && prev->track() == track) return prev; vmd_time_t t = prev ? prev->cursorTime() : 0; int x = ui->scroll_area->horizontalScrollBar()->value(); WPiano *piano = track ? new WPiano(file_, track, t, player_) : NULL; ui->scroll_area->setWidget(piano); if (piano != NULL) { piano->setFocus(Qt::OtherFocusReason); piano->adjust_y(); } ui->scroll_area->horizontalScrollBar()->setValue(x); update_tracks(); return piano; }
void sonora::criar_arq_temp() { FilesP = new QFile*[24]; FilesG = new QFile*[24]; FilesV = new QFile*[24]; for (int i = 0; i<=23; i++) { FilesP[i] = new QFile(QDir::tempPath() + "/work_p_" + QString::number(_RAND_NUMBER_) + "_" + QString::number(i) + ".mp3"); QFile piano(":/sounds/samples/p" + QString::number(i) + ".mp3"); if (FilesP[i]->open(QIODevice::ReadWrite)) { if (piano.open(QIODevice::ReadOnly)) { FilesP[i]->write(piano.readAll()); piano.close(); } FilesP[i]->close(); } FilesG[i] = new QFile(QDir::tempPath() + "/work_g_" + QString::number(_RAND_NUMBER_) + "_" + QString::number(i) + ".mp3"); QFile guitarra(":/sounds/samples/g" + QString::number(i) + ".mp3"); if (FilesG[i]->open(QIODevice::ReadWrite)) { if (guitarra.open(QIODevice::ReadOnly)) { FilesG[i]->write(guitarra.readAll()); guitarra.close(); } FilesG[i]->close(); } FilesV[i] = new QFile(QDir::tempPath() + "/work_v_" + QString::number(_RAND_NUMBER_) + "_" + QString::number(i) + ".mp3"); QFile vibraphone(":/sounds/samples/v" + QString::number(i) + ".mp3"); if (FilesV[i]->open(QIODevice::ReadWrite)) { if (vibraphone.open(QIODevice::ReadOnly)) { FilesV[i]->write(vibraphone.readAll()); vibraphone.close(); } FilesV[i]->close(); } } }
vmd_track_t * WFile::track() const { WPiano *p = piano(); return p ? p->track() : NULL; }
void parsecommand(char * s){ if(!strcmp(s,"help")){ help(); } else if(!strcmp(s,"maths")){ maths(); } else if(!strcmp(s,"piano")){ piano(); } else if(!strcmp(s,"printbios")){ checkbios(); } else if(!strcmp(s,"printidt")){ get_IDT_information(); } else if(!strcmp(s,"effectslow")){ espeed = 10; } else if(!strcmp(s,"effectfast")){ espeed = 1; } else if(!strcmp(s, "exit")){ goodbye(); } else if(!strcmp(s,"setsound")){ setExceptionSound(); } else if(!strcmp(s,"printsounds")){ printSoundSetting(); } else if(!strcmp(s,"playsound")){ playsound(); } else if(!strcmp(s,"clear")){ k_clear_screen(); } else if(!strcmp(s,"checkzerodivide")){ checkzerodiv(); } else if(!strcmp(s,"checkgeneralprotect")){ checkgeneralprotect(); } else if(!strcmp(s,"checkdebug")){ breakpoint(); } else if(!strcmp(s,"dolarcalculator")){ afip(); } else if(!strcmp(s,"about")){ about(); } else if(!strcmp(s,"printidtentry")){ printidtentry(); } else { printf("Marito says: COMMAND NOT FOUND\n"); genericBeep(); } return; }