# HG changeset patch # User Chris Cannam # Date 1213200805 0 # Node ID bfa6b0582acbf869068920555c3d083d2da44a3c # Parent 74dd55646f521d2432247e87f9263437d8ea71ad * reorganise tabular data editor model support diff -r 74dd55646f52 -r bfa6b0582acb framework/MainWindowBase.cpp --- a/framework/MainWindowBase.cpp Wed Jun 11 12:54:18 2008 +0000 +++ b/framework/MainWindowBase.cpp Wed Jun 11 16:13:25 2008 +0000 @@ -23,6 +23,7 @@ #include "data/model/SparseOneDimensionalModel.h" #include "data/model/NoteModel.h" #include "data/model/Labeller.h" +#include "data/model/TabularModel.h" #include "view/ViewManager.h" #include "layer/WaveformLayer.h" @@ -1934,13 +1935,22 @@ Model *model = layer->getModel(); if (!model) return; + TabularModel *tabular = dynamic_cast(model); + if (!tabular) { + //!!! how to prevent this function from being active if not + //appropriate model type? or will we ultimately support + //tabular display for all editable models? + std::cerr << "NOTE: Not a tabular model" << std::endl; + return; + } + if (m_layerDataDialogMap.find(layer) != m_layerDataDialogMap.end()) { m_layerDataDialogMap[layer]->show(); m_layerDataDialogMap[layer]->raise(); return; } - ModelDataTableDialog *dialog = new ModelDataTableDialog(model); + ModelDataTableDialog *dialog = new ModelDataTableDialog(tabular); // dialog->setAttribute(Qt::WA_DeleteOnClose); //!!! how to manage this? connect(m_viewManager,