From 60ba9722448f3f9263c63e7e254601e656d3e033 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Lalinsk=C3=BD?= Date: Mon, 12 Nov 2012 16:22:23 +0100 Subject: [PATCH] Make the toString() method virtual --- examples/inspect.cpp | 17 ++--------------- taglib/audioproperties.h | 5 ++++- taglib/mp4/mp4file.cpp | 13 ------------- taglib/mp4/mp4file.h | 5 ----- taglib/tag.h | 5 ++++- taglib/toolkit/tfile.h | 4 ++-- 6 files changed, 12 insertions(+), 37 deletions(-) diff --git a/examples/inspect.cpp b/examples/inspect.cpp index 90a94dbb..90559331 100644 --- a/examples/inspect.cpp +++ b/examples/inspect.cpp @@ -26,17 +26,11 @@ #include #include -#include +#include using namespace std; using namespace TagLib; -#define MAYBE_PRINT_DESC(_Type) \ - if(dynamic_cast<_Type *>(f.file())) { \ - cout << dynamic_cast<_Type *>(f.file())->toString().to8Bit(true) << endl; \ - found = 1; \ - } - int main(int argc, char *argv[]) { // process the command line args @@ -46,15 +40,8 @@ int main(int argc, char *argv[]) cout << "******************** \"" << argv[i] << "\"********************" << endl; FileRef f(argv[i]); - - bool found = 0; if(!f.isNull() && f.file()) { - MAYBE_PRINT_DESC(MP4::File); - MAYBE_PRINT_DESC(File); - } - - if(!found) { - cout << "could not find any information about the file" << endl; + cout << f.file()->toString().to8Bit(true) << endl; } } diff --git a/taglib/audioproperties.h b/taglib/audioproperties.h index 12400b9f..750924d4 100644 --- a/taglib/audioproperties.h +++ b/taglib/audioproperties.h @@ -87,7 +87,10 @@ namespace TagLib { */ virtual int channels() const = 0; - String toString() const; + /*! + * Returns description of the audio file. + */ + virtual String toString() const; protected: diff --git a/taglib/mp4/mp4file.cpp b/taglib/mp4/mp4file.cpp index 8d6a99a3..a9543211 100644 --- a/taglib/mp4/mp4file.cpp +++ b/taglib/mp4/mp4file.cpp @@ -149,16 +149,3 @@ MP4::File::save() return d->tag->save(); } -String -MP4::File::toString() const -{ - StringList desc; - if(d->properties) { - desc.append(d->properties->toString()); - } - if(d->tag) { - desc.append(d->tag->toString()); - } - return desc.toString("\n"); -} - diff --git a/taglib/mp4/mp4file.h b/taglib/mp4/mp4file.h index d8468490..2ed3bea5 100644 --- a/taglib/mp4/mp4file.h +++ b/taglib/mp4/mp4file.h @@ -100,11 +100,6 @@ namespace TagLib { */ bool save(); - /*! - * Description of the file. - */ - String toString() const; - private: void read(bool readProperties, Properties::ReadStyle audioPropertiesStyle); diff --git a/taglib/tag.h b/taglib/tag.h index f8a77a28..96612110 100644 --- a/taglib/tag.h +++ b/taglib/tag.h @@ -179,7 +179,10 @@ namespace TagLib { */ static void duplicate(const Tag *source, Tag *target, bool overwrite = true); - String toString() const; + /*! + * Returns description of the tag. + */ + virtual String toString() const; protected: /*! diff --git a/taglib/toolkit/tfile.h b/taglib/toolkit/tfile.h index 5ef39daa..860a889a 100644 --- a/taglib/toolkit/tfile.h +++ b/taglib/toolkit/tfile.h @@ -246,9 +246,9 @@ namespace TagLib { static bool isWritable(const char *name); /*! - * Description of the file. + * Returns description of the audio file and its tags. */ - String toString() const; + virtual String toString() const; protected: /*!