Mercurial > hg > svcore
annotate base/Layer.cpp @ 4:149bb02a41ba
* Session file save, and the skeleton of session file load.
author | Chris Cannam |
---|---|
date | Fri, 13 Jan 2006 18:05:07 +0000 |
parents | 581f67f370f3 |
children | 31c4ed2d5da6 |
rev | line source |
---|---|
Chris@0 | 1 /* -*- c-basic-offset: 4 -*- vi:set ts=8 sts=4 sw=4: */ |
Chris@0 | 2 |
Chris@0 | 3 /* |
Chris@0 | 4 A waveform viewer and audio annotation editor. |
Chris@2 | 5 Chris Cannam, Queen Mary University of London, 2005-2006 |
Chris@0 | 6 |
Chris@0 | 7 This is experimental software. Not for distribution. |
Chris@0 | 8 */ |
Chris@0 | 9 |
Chris@0 | 10 #include "Layer.h" |
Chris@0 | 11 #include "View.h" |
Chris@0 | 12 |
Chris@0 | 13 #include <iostream> |
Chris@0 | 14 |
Chris@3 | 15 #include "layer/LayerFactory.h" //!!! shouldn't be including this here -- does that suggest we need to move this into layer/ ? |
Chris@3 | 16 |
Chris@0 | 17 Layer::Layer(View *w) |
Chris@0 | 18 { |
Chris@0 | 19 m_view = w; |
Chris@0 | 20 |
Chris@0 | 21 // Subclass must call this: |
Chris@0 | 22 // w->addLayer(this); |
Chris@0 | 23 } |
Chris@0 | 24 |
Chris@0 | 25 Layer::~Layer() |
Chris@0 | 26 { |
Chris@0 | 27 m_view->removeLayer(this); |
Chris@0 | 28 } |
Chris@0 | 29 |
Chris@0 | 30 void |
Chris@0 | 31 Layer::setObjectName(const QString &name) |
Chris@0 | 32 { |
Chris@0 | 33 QObject::setObjectName(name); |
Chris@0 | 34 emit layerNameChanged(); |
Chris@0 | 35 } |
Chris@0 | 36 |
Chris@3 | 37 QString |
Chris@3 | 38 Layer::toXmlString(QString indent, QString extraAttributes) const |
Chris@3 | 39 { |
Chris@3 | 40 QString s; |
Chris@3 | 41 |
Chris@3 | 42 s += indent; |
Chris@3 | 43 |
Chris@4 | 44 s += QString("<layer id=\"%2\" type=\"%1\" name=\"%3\" model=\"%4\" %5/>\n") |
Chris@3 | 45 .arg(LayerFactory::instance()->getLayerTypeName |
Chris@3 | 46 (LayerFactory::instance()->getLayerType(this))) |
Chris@4 | 47 .arg(getObjectExportId(this)) |
Chris@3 | 48 .arg(objectName()) |
Chris@4 | 49 .arg(getObjectExportId(getModel())) |
Chris@3 | 50 .arg(extraAttributes); |
Chris@3 | 51 |
Chris@3 | 52 return s; |
Chris@3 | 53 } |
Chris@0 | 54 |
Chris@0 | 55 #ifdef INCLUDE_MOCFILES |
Chris@0 | 56 #include "Layer.moc.cpp" |
Chris@0 | 57 #endif |
Chris@0 | 58 |