]> granicus.if.org Git - taglib/commitdiff
Fill `TableOfContentsFrame::toString()`. (#852)
authorBert Wesarg <Bert.Wesarg@googlemail.com>
Sat, 27 Oct 2018 00:21:18 +0000 (02:21 +0200)
committerStephen F. Booth <me@sbooth.org>
Sat, 27 Oct 2018 00:21:18 +0000 (19:21 -0500)
taglib/mpeg/id3v2/frames/tableofcontentsframe.cpp

index ddd3b88c6d98c8250acda9eb30c522ebd45b2662..efe89d1717a2dfff58c00a02891c83f2b0d1c87b 100644 (file)
@@ -216,7 +216,23 @@ void TableOfContentsFrame::removeEmbeddedFrames(const ByteVector &id)
 
 String TableOfContentsFrame::toString() const
 {
-  return String();
+  String s = String(d->elementID) +
+             ": top level: " + (d->isTopLevel ? "true" : "false") +
+             ", ordered: " + (d->isOrdered ? "true" : "false");
+
+  if(!d->childElements.isEmpty()) {
+    s+= ", chapters: [ " + String(d->childElements.toByteVector(", ")) + " ]";
+  }
+
+  if(!d->embeddedFrameList.isEmpty()) {
+    StringList frameIDs;
+    for(FrameList::ConstIterator it = d->embeddedFrameList.begin();
+        it != d->embeddedFrameList.end(); ++it)
+      frameIDs.append((*it)->frameID());
+    s += ", sub-frames: [ " + frameIDs.toString(", ") + " ]";
+  }
+
+  return s;
 }
 
 PropertyMap TableOfContentsFrame::asProperties() const