Mercurial > hg > tony
diff src/MainWindow.cpp @ 3:17da7a332620
dynamic_cast -> qobject_cast for QObjects, works without other compilation unit
author | Chris Cannam |
---|---|
date | Fri, 16 Nov 2012 12:14:36 +0000 |
parents | f8f297008312 |
children | 976d9aec2a7e |
line wrap: on
line diff
--- a/src/MainWindow.cpp Fri Nov 16 12:13:04 2012 +0000 +++ b/src/MainWindow.cpp Fri Nov 16 12:14:36 2012 +0000 @@ -712,10 +712,10 @@ currentLayer->isLayerEditable()); bool haveCurrentTimeInstantsLayer = (haveCurrentLayer && - dynamic_cast<TimeInstantLayer *>(currentLayer)); + qobject_cast<TimeInstantLayer *>(currentLayer)); bool haveCurrentTimeValueLayer = (haveCurrentLayer && - dynamic_cast<TimeValueLayer *>(currentLayer)); + qobject_cast<TimeValueLayer *>(currentLayer)); emit canChangePlaybackSpeed(true); int v = m_playSpeed->value(); @@ -913,7 +913,7 @@ MainWindow::openRecentFile() { QObject *obj = sender(); - QAction *action = dynamic_cast<QAction *>(obj); + QAction *action = qobject_cast<QAction *>(obj); if (!action) { std::cerr << "WARNING: MainWindow::openRecentFile: sender is not an action" @@ -1009,8 +1009,8 @@ for (int i = 0; i < pane->getLayerCount(); ++i) { Layer *layer = pane->getLayer(i); if (!layer) continue; - if (dynamic_cast<WaveformLayer *>(layer)) waveformLayer = layer; - if (dynamic_cast<TimeValueLayer *>(layer)) return; + if (qobject_cast<WaveformLayer *>(layer)) waveformLayer = layer; + if (qobject_cast<TimeValueLayer *>(layer)) return; } if (!waveformLayer) return; @@ -1372,7 +1372,7 @@ MainWindow::modelAdded(Model *model) { MainWindowBase::modelAdded(model); - DenseTimeValueModel *dtvm = dynamic_cast<DenseTimeValueModel *>(model); + DenseTimeValueModel *dtvm = qobject_cast<DenseTimeValueModel *>(model); if (dtvm) { std::cerr << "A dense time-value model (such as an audio file) has been loaded" << std::endl; } @@ -1490,7 +1490,7 @@ void MainWindow::mouseEnteredWidget() { - QWidget *w = dynamic_cast<QWidget *>(sender()); + QWidget *w = qobject_cast<QWidget *>(sender()); if (!w) return; if (w == m_fader) {