void MainWindow::renderNextSheet() { QString text = ui->textEdit->toPlainText(); text = simplifyEnd(text); currentSheetNumber++; int lettersToTheEnd = text.length() - sheetPointers.at(currentSheetNumber); ui->svgView->hideBorders(false); if (preferencesDialog->alternateMargins()) ui->svgView->changeLeftRightMargins(currentSheetNumber % 2); else ui->svgView->changeLeftRightMargins(false); int endOfSheet = ui->svgView->renderText(QStringRef(&text, sheetPointers.at(currentSheetNumber), lettersToTheEnd)); endOfSheet += sheetPointers.at(currentSheetNumber); ui->toolBar->actions()[5]->setEnabled(true); //enable "Previous Sheet" tool button if (endOfSheet >= text.length()) //this sheet is the last { ui->toolBar->actions()[4]->setDisabled(true); //disable "Next Sheet" tool button return; } if (currentSheetNumber >= sheetPointers.count() - 1) //if this sheet has not yet been rendered, sheetPointers.push_back(endOfSheet); //remember, where the next sheet begins }
void MainWindow::renderFirstSheet() { sheetPointers.clear(); currentSheetNumber = 0; sheetPointers.push_back(0); QString text = ui->textEdit->toPlainText(); text = simplifyEnd(text); ui->svgView->hideBorders(false); int endOfSheet = ui->svgView->renderText(QStringRef(&text)); sheetPointers.push_back(endOfSheet); bool isThereMoreThanOneSheet = text.length() - 1 >= endOfSheet; ui->toolBar->actions()[4]->setEnabled(isThereMoreThanOneSheet); ui->toolBar->actions()[5]->setDisabled(true); }
void MainWindow::renderFirstSheet() { sheetPointers.clear(); sheetPointers.push_back(0); currentSheetNumber = 0; text = ui->textEdit->toPlainText(); text = simplifyEnd(text); //to avoid blank sheets at the end int endOfSheet = ui->svgView->renderText(QStringRef(&text)); sheetPointers.push_back(endOfSheet); bool isThereMoreThanOneSheet = (text.length() - 1) >= endOfSheet; ui->toolBar->actions()[ToolButton::Next]->setEnabled(isThereMoreThanOneSheet); ui->toolBar->actions()[ToolButton::Previous]->setDisabled(true); countMissedCharacters(); showSheetNumber(currentSheetNumber); }