--- rosegarden/src/base/Sets.h
+++ rosegarden/src/base/Sets.h	2012-04-11 00:28:12.266536797 -0500
@@ -376,8 +376,8 @@
                                                             PropertyName stemUpProperty) :
     AbstractSet<Element, Container>(c, i, q),
     m_stemUpProperty(stemUpProperty),
-    m_time(q->getQuantizedAbsoluteTime(getAsEvent(i))),
-    m_subordering(getAsEvent(i)->getSubOrdering()),
+    m_time(q->getQuantizedAbsoluteTime(this->getAsEvent(i))),
+    m_subordering(this->getAsEvent(i)->getSubOrdering()),
     m_firstReject(c.end())
 {
     AbstractSet<Element, Container>::initialise();
@@ -416,7 +416,7 @@
 bool
 GenericChord<Element, Container, singleStaff>::test(const Iterator &i)
 {
-    Event *e = getAsEvent(i);
+    Event *e = this->getAsEvent(i);
     if (AbstractSet<Element, Container>::
 	getQuantizer().getQuantizedAbsoluteTime(e) != m_time) {
 	return false;
@@ -452,7 +452,7 @@
 GenericChord<Element, Container, singleStaff>::sample(const Iterator &i,
                                                       bool goingForwards)
 {
-    Event *e1 = getAsEvent(i);
+    Event *e1 = this->getAsEvent(i);
     if (!e1->isa(Note::EventType)) {
         if (goingForwards && m_firstReject == AbstractSet<Element, Container>::getContainer().end()) m_firstReject = i;
         return false;
@@ -472,7 +472,7 @@
 
         if (AbstractSet<Element, Container>::m_baseIterator != AbstractSet<Element, Container>::getContainer().end()) {
 
-            Event *e0 = getAsEvent(AbstractSet<Element, Container>::m_baseIterator);
+            Event *e0 = this->getAsEvent(AbstractSet<Element, Container>::m_baseIterator);
 
             if (!(m_stemUpProperty == PropertyName::EmptyPropertyName)) {
 
@@ -518,7 +518,7 @@
     }
 
     AbstractSet<Element, Container>::sample(i, goingForwards);
-    push_back(i);
+    this->push_back(i);
     return true;
 }
 
@@ -560,7 +560,7 @@
 
     for (unsigned int i = 0; i < std::vector<typename Container::iterator>::size(); ++i) {
 
-        Event *e = getAsEvent((*this)[i]);
+        Event *e = this->getAsEvent((*this)[i]);
         std::vector<Mark> marks(Marks::getMarks(*e));
 
         for (std::vector<Mark>::iterator j = marks.begin(); j != marks.end(); ++j) {
@@ -580,7 +580,7 @@
 
     for (unsigned int i = 0; i < std::vector<typename Container::iterator>::size(); ++i) {
 
-        Event *e = getAsEvent((*this)[i]);
+        Event *e = this->getAsEvent((*this)[i]);
         std::vector<Mark> marks(Marks::getMarks(*e));
 
 
@@ -607,9 +607,9 @@
 
     for (typename std::vector<typename Container::iterator>::const_iterator
              i = std::vector<typename Container::iterator>::begin(); i != std::vector<typename Container::iterator>::end(); ++i) {
-        if (getAsEvent(*i)->has(BaseProperties::PITCH)) {
+        if (this->getAsEvent(*i)->has(BaseProperties::PITCH)) {
             int pitch = get__Int
-                (getAsEvent(*i), BaseProperties::PITCH);
+                (this->getAsEvent(*i), BaseProperties::PITCH);
             if (pitches.size() > 0 && pitches[pitches.size()-1] == pitch) 
                 continue;
             pitches.push_back(pitch);
@@ -641,7 +641,7 @@
     while (1) {
         if (i == AbstractSet<Element, Container>::getContainer().begin()) return AbstractSet<Element, Container>::getContainer().end();
         --i;
-        if (getAsEvent(i)->isa(Note::EventType)) {
+        if (this->getAsEvent(i)->isa(Note::EventType)) {
             return i;
         }
     }
@@ -655,7 +655,7 @@
     Iterator i(AbstractSet<Element, Container>::getFinalElement());
     while (  i != AbstractSet<Element, Container>::getContainer().end() &&
            ++i != AbstractSet<Element, Container>::getContainer().end()) {
-        if (getAsEvent(i)->isa(Note::EventType)) {
+        if (this->getAsEvent(i)->isa(Note::EventType)) {
             return i;
         }
     }
@@ -677,8 +677,8 @@
                                                            const Iterator &b)
 {
     try {
-        long ap = get__Int(getAsEvent(a), BaseProperties::PITCH);
-        long bp = get__Int(getAsEvent(b), BaseProperties::PITCH);
+        long ap = get__Int(this->getAsEvent(a), BaseProperties::PITCH);
+        long bp = get__Int(this->getAsEvent(b), BaseProperties::PITCH);
         return (ap < bp);
     } catch (Event::NoData) {
         std::cerr << "Bad karma: PitchGreater failed to find one or both pitches" << std::endl;
