Mercurial > hg > svgui
comparison layer/TextLayer.cpp @ 675:3437e0fad7ae imaf_enc
IMAF load code from Jesus Corral Garcia
| author | Chris Cannam | 
|---|---|
| date | Mon, 04 Nov 2013 17:09:36 +0000 | 
| parents | 4806715f7a19 | 
| children | c02c51ae5238 | 
   comparison
  equal
  deleted
  inserted
  replaced
| 643:77fa3fdbfc7e | 675:3437e0fad7ae | 
|---|---|
| 125 for (TextModel::PointList::iterator i = points.begin(); | 125 for (TextModel::PointList::iterator i = points.begin(); | 
| 126 i != points.end(); ++i) { | 126 i != points.end(); ++i) { | 
| 127 | 127 | 
| 128 const TextModel::Point &p(*i); | 128 const TextModel::Point &p(*i); | 
| 129 | 129 | 
| 130 int px = v->getXForFrame(p.frame); | 130 int px = v->getXForFrame(p.frame); | 
| 131 int py = getYForHeight(v, p.height); | 131 int py = getYForHeight(v, p.height); | 
| 132 | 132 | 
| 133 QString label = p.label; | 133 QString label = p.label; | 
| 134 if (label == "") { | 134 if (label == "") { | 
| 135 label = tr("<no text>"); | 135 label = tr("<no text>"); | 
| 136 } | 136 } | 
| 137 | 137 | 
| 138 QRect rect = metrics.boundingRect | 138 QRect rect = metrics.boundingRect | 
| 139 (QRect(0, 0, 150, 200), | 139 (QRect(0, 0, 150, 200), | 
| 140 Qt::AlignLeft | Qt::AlignTop | Qt::TextWordWrap, label); | 140 Qt::AlignLeft | Qt::AlignTop | Qt::TextWordWrap, label); | 
| 141 | 141 | 
| 203 RealTime rt = RealTime::frame2RealTime(useFrame, m_model->getSampleRate()); | 203 RealTime rt = RealTime::frame2RealTime(useFrame, m_model->getSampleRate()); | 
| 204 | 204 | 
| 205 QString text; | 205 QString text; | 
| 206 | 206 | 
| 207 if (points.begin()->label == "") { | 207 if (points.begin()->label == "") { | 
| 208 text = QString(tr("Time:\t%1\nHeight:\t%2\nLabel:\t%3")) | 208 text = QString(tr("Time:\t%1\nHeight:\t%2\nLabel:\t%3")) | 
| 209 .arg(rt.toText(true).c_str()) | 209 .arg(rt.toText(true).c_str()) | 
| 210 .arg(points.begin()->height) | 210 .arg(points.begin()->height) | 
| 211 .arg(points.begin()->label); | 211 .arg(points.begin()->label); | 
| 212 } | 212 } | 
| 213 | 213 | 
| 368 paint.setPen(v->getBackground()); | 368 paint.setPen(v->getBackground()); | 
| 369 } | 369 } | 
| 370 | 370 | 
| 371 QString label = p.label; | 371 QString label = p.label; | 
| 372 if (label == "") { | 372 if (label == "") { | 
| 373 label = tr("<no text>"); | 373 label = tr("<no text>"); | 
| 374 } | 374 } | 
| 375 | 375 | 
| 376 QRect boxRect = paint.fontMetrics().boundingRect | 376 QRect boxRect = paint.fontMetrics().boundingRect | 
| 377 (QRect(0, 0, boxMaxWidth, boxMaxHeight), | 377 (QRect(0, 0, boxMaxWidth, boxMaxHeight), | 
| 378 Qt::AlignLeft | Qt::AlignTop | Qt::TextWordWrap, label); | 378 Qt::AlignLeft | Qt::AlignTop | Qt::TextWordWrap, label); | 
| 451 | 451 | 
| 452 m_editingCommand->deletePoint(m_editingPoint); | 452 m_editingCommand->deletePoint(m_editingPoint); | 
| 453 m_editingPoint.frame = frame; | 453 m_editingPoint.frame = frame; | 
| 454 m_editingPoint.height = height; | 454 m_editingPoint.height = height; | 
| 455 m_editingCommand->addPoint(m_editingPoint); | 455 m_editingCommand->addPoint(m_editingPoint); | 
| 456 | |
| 457 | |
| 456 } | 458 } | 
| 457 | 459 | 
| 458 void | 460 void | 
| 459 TextLayer::drawEnd(View *v, QMouseEvent *) | 461 TextLayer::drawEnd(View *v, QMouseEvent *) | 
| 460 { | 462 { | 
| 461 // SVDEBUG << "TextLayer::drawEnd(" << e->x() << "," << e->y() << ")" << endl; | 463 // SVDEBUG << "TextLayer::drawEnd(" << e->x() << "," << e->y() << ")" << endl; | 
| 462 if (!m_model || !m_editing) return; | 464 if (!m_model || !m_editing) return; | 
| 463 | 465 | 
| 464 bool ok = false; | 466 bool ok = false; | 
| 465 QString label = QInputDialog::getText(v, tr("Enter label"), | 467 QString label = QInputDialog::getText(v, tr("Enter label"), | 
| 466 tr("Please enter a new label:"), | 468 tr("Please enter a new label:"), | 
| 467 QLineEdit::Normal, "", &ok); | 469 QLineEdit::Normal, "", &ok); | 
| 468 | 470 | 
| 469 if (ok) { | 471 if (ok) { | 
| 470 TextModel::RelabelCommand *command = | 472 TextModel::RelabelCommand *command = | 
| 471 new TextModel::RelabelCommand(m_model, m_editingPoint, label); | 473 new TextModel::RelabelCommand(m_model, m_editingPoint, label); | 
