Provide dialogs to edit pan values numerically, at least for
[ardour.git] / libs / ardour / speakers.cc
index 4bb843021c7ef2d9478c6f2e54ed3103e08af211..51bae165852a61e37552beb8d1033a7e0e03fecd 100644 (file)
@@ -40,7 +40,7 @@ Speaker::Speaker (Speaker const & o)
        , _coords (o._coords)
        , _angles (o._angles)
 {
-       
+
 }
 
 Speaker &
@@ -71,6 +71,7 @@ Speakers::Speakers ()
 }
 
 Speakers::Speakers (const Speakers& s)
+       : Stateful ()
 {
         _speakers = s._speakers;
 }
@@ -92,7 +93,7 @@ void
 Speakers::dump_speakers (ostream& o)
 {
        for (vector<Speaker>::iterator i = _speakers.begin(); i != _speakers.end(); ++i) {
-               o << "Speaker " << (*i).id << " @ " 
+               o << "Speaker " << (*i).id << " @ "
                  << (*i).coords().x << ", " << (*i).coords().y << ", " << (*i).coords().z
                  << " azimuth " << (*i).angles().azi
                  << " elevation " << (*i).angles().ele
@@ -108,7 +109,7 @@ Speakers::clear_speakers ()
        update ();
 }
 
-int 
+int
 Speakers::add_speaker (const AngularVector& position)
 {
        int id = _speakers.size();
@@ -119,7 +120,7 @@ Speakers::add_speaker (const AngularVector& position)
        Changed ();
 
        return id;
-}        
+}
 
 void
 Speakers::remove_speaker (int id)
@@ -176,7 +177,7 @@ Speakers::setup_default_speakers (uint32_t n)
                 add_speaker (AngularVector (215.0, 0.0));
                break;
 
-       default: 
+       default:
        {
                double degree_step = 360.0 / n;
                double deg;
@@ -197,7 +198,7 @@ Speakers::setup_default_speakers (uint32_t n)
        }
         }
 }
-        
+
 XMLNode&
 Speakers::get_state ()
 {
@@ -217,7 +218,7 @@ Speakers::get_state ()
 
                 node->add_child_nocopy (*speaker);
         }
-        
+
         return *node;
 }
 
@@ -245,7 +246,7 @@ Speakers::set_state (const XMLNode& node, int /*version*/)
                                 continue;
                         }
                         e = atof (prop->value());
-                                            
+
                         if ((prop = (*i)->property (X_("distance"))) == 0) {
                                 warning << _("Speaker information is missing distance - speaker ignored") << endmsg;
                                 continue;
@@ -257,6 +258,6 @@ Speakers::set_state (const XMLNode& node, int /*version*/)
         }
 
         update ();
-        
+
         return 0;
 }