void StartingSequenceMaker::make_2minDU_NoRace() { initShort(1); addShort(1); addShort(1); addShort(1); addLong(60); addMedium(30); addMedium(25); addPip(1); addPip(1); addPip(1); addPip(1); addPip(1); addLong(30); }
void StartingSequenceMaker::make_2minDU_XminRace( int raceTime_min ) { initShort(1); addShort(1); addShort(1); addShort(1); addLong(60); addMedium(30); addMedium(25); addPip(1); addPip(1); addPip(1); addPip(1); addPip(1); addLong(raceTime_min * SEC_PER_MIN); addRaceEnd(60); }
/** * @brief MainWindow::fillDemoData befüllt Datenbank mit Demo-Daten, falls sie leer ist. * @param more wenn true, dann wird Datenbank auch befüllt, wenn bereits Daten in DB sind. */ void MainWindow::fillDemoData(bool more){ QString addNo = ""; if (more){ qsrand( QDateTime::currentDateTime().toTime_t() ); addNo = " ("+QString::number(qrand()%100)+")"; } if (more || (lendlib->getMList().empty() && lendlib->getPList().empty())){ int m1 = addMedium(book,"Die Bibel"+addNo,""); int m2 = addMedium(book,"Eragon"+addNo,"Christopher Paolini"); addMedium(book,"Harry Potter"+addNo, "J. K. Rowling"); int m4 = addMedium(cd,"Take That: Best of"+addNo, "Take That"); int m5 = addMedium(dvd,"Harry Potter"+addNo, "Chris Columbus"); int m6 = addMedium(other,"Programmierung I Skript"+addNo,""); int p1 = addPerson("Hans"+addNo); int p2 = addPerson("Klaus"+addNo); int p3 = addPerson("Gabi"+addNo); addPerson("Brunhilde"+addNo); lendMedium(m1, p1); lendMedium(m2, p2); lendMedium(m4, p1); lendMedium(m5, p1); lendMedium(m6, p3); } }
void K3b::DataMultisessionImportDialog::updateMedia() { d->sessionView->clear(); d->sessions.clear(); QList<K3b::Device::Device*> devices = k3bcore->deviceManager()->allDevices(); bool haveMedium = false; for( QList<K3b::Device::Device *>::const_iterator it = devices.constBegin(); it != devices.constEnd(); ++it ) { K3b::Medium medium = k3bappcore->mediaCache()->medium( *it ); if ( medium.diskInfo().mediaType() & K3b::Device::MEDIA_WRITABLE && medium.diskInfo().diskState() == K3b::Device::STATE_INCOMPLETE ) { addMedium( medium ); haveMedium = true; } else if ( !medium.diskInfo().empty() && medium.diskInfo().mediaType() & ( K3b::Device::MEDIA_DVD_PLUS_RW|K3b::Device::MEDIA_DVD_RW_OVWR ) ) { addMedium( medium ); haveMedium = true; } } if ( !haveMedium ) { QTreeWidgetItem* noMediaItem = new QTreeWidgetItem( d->sessionView ); QFont fnt( noMediaItem->font(0) ); fnt.setItalic( true ); noMediaItem->setText( 0, i18n( "Please insert an appendable medium" ) ); noMediaItem->setFont( 0, fnt ); } else if( QTreeWidgetItem* firstMedium = d->sessionView->topLevelItem(0) ) { if( firstMedium->childCount() > 0 ) d->sessionView->setCurrentItem( firstMedium->child( firstMedium->childCount()-1 ) ); else d->sessionView->setCurrentItem( firstMedium ); } d->sessionView->setEnabled( haveMedium ); }
/** * @brief MainWindow::addMediumButton reagiert, wenn der Button zum Hinzufügen eines Mediums gedrückt wurde. */ void MainWindow::addMediumButton(){ /// Setzt in jedem Fall ein Titel voraus. if(ui->addMediaTitle->text().isEmpty()){ QMessageBox msgBox; msgBox.setText("Bitte einen Titel eingeben."); msgBox.exec(); } else { MType type; QString bType = ui->addMediaType->currentText(); if (!bType.compare("Buch")){ type = book; } else if (!bType.compare("CD")){ type = cd; } else if (!bType.compare("DVD")){ type = dvd; } else { type = other; } /// je nach Typ, wird ein anderes Medium erstellt addMedium(type, ui->addMediaTitle->text(), ui->addMediaDetail->text()); ui->addMediaTitle->setText(""); ui->addMediaDetail->setText(""); } }
/** * @brief MainWindow::fillLibFromFile füllt die Datenbank mit den Daten aus den entsprechenden .csv Dateien * (lendlibLend.csv für die Beziehung, lendlibMedia.csv für die Medien und lendlibPerson.csv für Personen) */ void MainWindow::fillLibFromFile(){ QFile lendFile("lendlibLend.csv"); QFile mFile("lendlibMedia.csv"); QFile pFile("lendlibPerson.csv"); QList<int> idList; /// Lese alle Medien aus if (mFile.open(QIODevice::ReadOnly|QFile::Truncate)) { int lineNumber = 1; mFile.readLine(); while (!mFile.atEnd()) { QByteArray line = mFile.readLine().replace(QByteArray("\n"),QByteArray("")); lineNumber++; QList<QByteArray> lineElements = line.split('\t'); /// - Prüfe, ob Format richtig ist (4 Spalten) if (lineElements.length() == 4){ int newID = lineElements[0].toInt(); /// - Prüfe, ob ID in .csv korrekt ist if(idList.contains(newID)){ errString = "Fehler beim Lesen der Datei 'lendlibMedia.csv' in Zeile "+ QString::number(lineNumber)+" (ID bereits vorhanden)."; readErr = true; return; } idList.append(newID); MType mType; switch (lineElements[1].toInt()){ case 0: mType = book; break; case 1: mType = cd; break; case 2: mType = dvd; break; default: mType = other; } /// - Füge Medium hinzu addMedium(mType,QString::fromStdString(lineElements[2].toStdString()),QString::fromStdString(lineElements[3].toStdString()),newID); } else { errString = "Fehler beim Lesen der Datei 'lendlibMedia.csv' in Zeile "+ QString::number(lineNumber)+" (Zeile enthält nicht 3 Elemente)."; readErr = true; return; } } } /// Lese alle Personen aus if (pFile.open(QIODevice::ReadOnly|QFile::Truncate)) { int lineNumber = 1; pFile.readLine(); while (!pFile.atEnd()) { QByteArray line = pFile.readLine().replace(QByteArray("\n"),QByteArray("")); lineNumber++; QList<QByteArray> lineElements = line.split('\t'); /// - Prüfe, ob Format richtig ist (2 Spalten) if (lineElements.length() == 2){ int newID = lineElements[0].toInt(); /// - Prüfe, ob ID in .csv korrekt ist if(idList.contains(newID)){ errString = "Fehler beim Lesen der Datei 'lendlibPerson.csv' in Zeile "+ QString::number(lineNumber)+" (ID bereits vorhanden)."; readErr = true; return; } idList.append(newID); /// - Füge Person hinzu addPerson(QString::fromStdString(lineElements[1].toStdString()),newID); } else { errString = "Fehler beim Lesen der Datei 'lendlibPerson.csv' in Zeile "+ QString::number(lineNumber)+" (Zeile enthält nicht 2 Elemente)."; readErr = true; return; } } } /// Lese alle Ausleih-Relationen aus if (lendFile.open(QIODevice::ReadOnly|QFile::Truncate)) { int lineNumber = 1; lendFile.readLine(); while (!lendFile.atEnd()) { QByteArray line = lendFile.readLine().replace(QByteArray("\n"),QByteArray("")); lineNumber++; QList<QByteArray> lineElements = line.split('\t'); /// - Prüfe, ob Format richtig ist (2 Spalten) if (lineElements.length() == 2){ int mediumID = lineElements[0].toInt(); int personID = lineElements[1].toInt(); /// - Prüfe, ob die Medium-ID einem Medium entspricht if(!lendlib->isMediumEntry(mediumID)){ errString = "Fehler beim Lesen der Datei 'lendlibLend.csv' in Zeile "+ QString::number(lineNumber)+" (ID ist kein Medium)."; readErr = true; return; } /// - Prüfe, ob die Personen-ID einer Person entspricht if(!lendlib->isPersonEntry(personID)){ cerr << lineElements[0].toStdString() << " "<< mediumID << "\n"; cerr << lineElements[1].toStdString() << " "<< personID << "\n"; errString = "Fehler beim Lesen der Datei 'lendlibLend.csv' in Zeile "+ QString::number(lineNumber)+" (ID ist keine Person)."; readErr = true; return; } /// - Füge Ausleih-Relation hinzu lendMedium(mediumID, personID); } else { errString = "Fehler beim Lesen der Datei 'lendlibLend.csv' in Zeile "+ QString::number(lineNumber)+" (Zeile enthält nicht 2 Elemente)."; readErr = true; return; } } } }