Commit 594de930 authored by Scott Wheeler's avatar Scott Wheeler

Fixed a couple of bugs with the new genre implementation and made

TaggerWidget::genreBox work with it.

svn path=/trunk/kdemultimedia/juk/; revision=141938
parent a0b44463
<genreList name="id3v1">
<genre id3v1="123">A Capella</genre>
<genre id3v1="34">Acid</genre>
<genre id3v1="74">Acid Jazz</genre>
<genre id3v1="73">Acid Punk</genre>
<genre id3v1="99">Acoustic</genre>
<genre id3v1="40">Alt. Rock</genre>
<genre id3v1="20">Alternative</genre>
<genre id3v1="26">Ambient</genre>
<genre id3v1="145">Anime</genre>
<genre id3v1="90">Avantgarde</genre>
<genre id3v1="116">Ballad</genre>
<genre id3v1="41">Bass</genre>
<genre id3v1="135">Beat</genre>
<genre id3v1="85">Bebob</genre>
<genre id3v1="96">Big Band</genre>
<genre id3v1="138">Black Metal</genre>
<genre id3v1="89">Bluegrass</genre>
<genre id3v1="0">Blues</genre>
<genre id3v1="107">Booty Bass</genre>
<genre id3v1="132">BritPop</genre>
<genre id3v1="65">Cabaret</genre>
<genre id3v1="88">Celtic</genre>
<genre id3v1="104">Chamber Music</genre>
<genre id3v1="102">Chanson</genre>
<genre id3v1="97">Chorus</genre>
<genre id3v1="136">Christian Gangsta Rap</genre>
<genre id3v1="61">Christian Rap</genre>
<genre id3v1="141">Christian Rock</genre>
<genre id3v1="1">Classic Rock</genre>
<genre id3v1="32">Classical</genre>
<genre id3v1="112">Club</genre>
<genre id3v1="128">Club-House</genre>
<genre id3v1="57">Comedy</genre>
<genre id3v1="140">Contemporary Christian</genre>
<genre id3v1="2">Country</genre>
<genre id3v1="139">Crossover</genre>
<genre id3v1="58">Cult</genre>
<genre id3v1="3">Dance</genre>
<genre id3v1="125">Dance Hall</genre>
<genre id3v1="50">Darkwave</genre>
<genre id3v1="22">Death Metal</genre>
<genre id3v1="4">Disco </genre>
<genre id3v1="55">Dream</genre>
<genre id3v1="127">Drum &amp; Bass</genre>
<genre id3v1="122">Drum Solo</genre>
<genre id3v1="120">Duet</genre>
<genre id3v1="98">Easy Listening</genre>
<genre id3v1="52">Electronic</genre>
<genre id3v1="48">Ethnic</genre>
<genre id3v1="124">Euro-House</genre>
<genre id3v1="25">Euro-Techno</genre>
<genre id3v1="54">Eurodance</genre>
<genre id3v1="80">Folk</genre>
<genre id3v1="81">Folk/Rock</genre>
<genre id3v1="115">Folklore</genre>
<genre id3v1="119">Freestyle</genre>
<genre id3v1="5">Funk</genre>
<genre id3v1="84">Fusion</genre>
<genre id3v1="36">Game</genre>
<genre id3v1="59">Gangsta</genre>
<genre id3v1="126">Goa</genre>
<genre id3v1="38">Gospel</genre>
<genre id3v1="49">Gothic</genre>
<genre id3v1="91">Gothic Rock</genre>
<genre id3v1="6">Grunge</genre>
<genre id3v1="79">Hard Rock</genre>
<genre id3v1="129">Hardcore</genre>
<genre id3v1="137">Heavy Metal</genre>
<genre id3v1="7">Hip-Hop</genre>
<genre id3v1="35">House</genre>
<genre id3v1="100">Humour</genre>
<genre id3v1="131">Indie</genre>
<genre id3v1="19">Industrial</genre>
<genre id3v1="46">Instrum. Pop</genre>
<genre id3v1="47">Instrum. Rock</genre>
<genre id3v1="33">Instrumental</genre>
<genre id3v1="8">Jazz</genre>
<genre id3v1="29">Jazz+Funk</genre>
<genre id3v1="146">Jpop</genre>
<genre id3v1="63">Jungle</genre>
<genre id3v1="86">Latin</genre>
<genre id3v1="71">Lo-Fi</genre>
<genre id3v1="45">Meditative</genre>
<genre id3v1="142">Merengue</genre>
<genre id3v1="9">Metal</genre>
<genre id3v1="77">Musical</genre>
<genre id3v1="82">National Folk</genre>
<genre id3v1="64">Native American</genre>
<genre id3v1="133">Negerpunk</genre>
<genre id3v1="10">New Age</genre>
<genre id3v1="66">New Wave</genre>
<genre id3v1="39">Noise</genre>
<genre id3v1="11">Oldies</genre>
<genre id3v1="103">Opera</genre>
<genre id3v1="12">Other</genre>
<genre id3v1="75">Polka</genre>
<genre id3v1="134">Polsk Punk</genre>
<genre id3v1="13">Pop</genre>
<genre id3v1="53">Pop-Folk</genre>
<genre id3v1="62">Pop/Funk</genre>
<genre id3v1="109">Porn Groove</genre>
<genre id3v1="117">Power Ballad</genre>
<genre id3v1="23">Pranks</genre>
<genre id3v1="108">Primus</genre>
<genre id3v1="92">Progress. Rock</genre>
<genre id3v1="93">Psychadel. Rock</genre>
<genre id3v1="67">Psychadelic</genre>
<genre id3v1="43">Punk</genre>
<genre id3v1="121">Punk Rock</genre>
<genre id3v1="14">R&amp;B</genre>
<genre id3v1="15">Rap</genre>
<genre id3v1="68">Rave</genre>
<genre id3v1="16">Reggae</genre>
<genre id3v1="76">Retro</genre>
<genre id3v1="87">Revival</genre>
<genre id3v1="118">Rhythmic Soul</genre>
<genre id3v1="17">Rock</genre>
<genre id3v1="18">Techno</genre>
<genre id3v1="19">Industrial</genre>
<genre id3v1="20">Alternative</genre>
<genre id3v1="78">Rock &amp; Roll</genre>
<genre id3v1="143">Salsa</genre>
<genre id3v1="114">Samba</genre>
<genre id3v1="110">Satire</genre>
<genre id3v1="69">Showtunes</genre>
<genre id3v1="21">Ska</genre>
<genre id3v1="22">Death Metal</genre>
<genre id3v1="23">Pranks</genre>
<genre id3v1="24">Soundtrack</genre>
<genre id3v1="25">Euro-Techno</genre>
<genre id3v1="26">Ambient</genre>
<genre id3v1="27">Trip-Hop</genre>
<genre id3v1="28">Vocal</genre>
<genre id3v1="29">Jazz+Funk</genre>
<genre id3v1="30">Fusion</genre>
<genre id3v1="31">Trance</genre>
<genre id3v1="32">Classical</genre>
<genre id3v1="33">Instrumental</genre>
<genre id3v1="34">Acid</genre>
<genre id3v1="35">House</genre>
<genre id3v1="36">Game</genre>
<genre id3v1="37">Sound Clip</genre>
<genre id3v1="38">Gospel</genre>
<genre id3v1="39">Noise</genre>
<genre id3v1="40">Alt. Rock</genre>
<genre id3v1="41">Bass</genre>
<genre id3v1="111">Slow Jam</genre>
<genre id3v1="95">Slow Rock</genre>
<genre id3v1="105">Sonata</genre>
<genre id3v1="42">Soul</genre>
<genre id3v1="43">Punk</genre>
<genre id3v1="44">Space</genre>
<genre id3v1="45">Meditative</genre>
<genre id3v1="46">Instrum. Pop</genre>
<genre id3v1="47">Instrum. Rock</genre>
<genre id3v1="48">Ethnic</genre>
<genre id3v1="49">Gothic</genre>
<genre id3v1="50">Darkwave</genre>
<genre id3v1="51">Techno-Indust.</genre>
<genre id3v1="52">Electronic</genre>
<genre id3v1="53">Pop-Folk</genre>
<genre id3v1="54">Eurodance</genre>
<genre id3v1="55">Dream</genre>
<genre id3v1="37">Sound Clip</genre>
<genre id3v1="24">Soundtrack</genre>
<genre id3v1="56">Southern Rock</genre>
<genre id3v1="57">Comedy</genre>
<genre id3v1="58">Cult</genre>
<genre id3v1="59">Gangsta</genre>
<genre id3v1="60">Top 40</genre>
<genre id3v1="61">Christian Rap</genre>
<genre id3v1="62">Pop/Funk</genre>
<genre id3v1="63">Jungle</genre>
<genre id3v1="64">Native American</genre>
<genre id3v1="65">Cabaret</genre>
<genre id3v1="66">New Wave</genre>
<genre id3v1="67">Psychadelic</genre>
<genre id3v1="68">Rave</genre>
<genre id3v1="69">Showtunes</genre>
<genre id3v1="70">Trailer</genre>
<genre id3v1="71">Lo-Fi</genre>
<genre id3v1="72">Tribal</genre>
<genre id3v1="73">Acid Punk</genre>
<genre id3v1="74">Acid Jazz</genre>
<genre id3v1="75">Polka</genre>
<genre id3v1="76">Retro</genre>
<genre id3v1="77">Musical</genre>
<genre id3v1="78">Rock &amp; Roll</genre>
<genre id3v1="79">Hard Rock</genre>
<genre id3v1="80">Folk</genre>
<genre id3v1="81">Folk/Rock</genre>
<genre id3v1="82">National Folk</genre>
<genre id3v1="44">Space</genre>
<genre id3v1="101">Speech</genre>
<genre id3v1="83">Swing</genre>
<genre id3v1="84">Fusion</genre>
<genre id3v1="85">Bebob</genre>
<genre id3v1="86">Latin</genre>
<genre id3v1="87">Revival</genre>
<genre id3v1="88">Celtic</genre>
<genre id3v1="89">Bluegrass</genre>
<genre id3v1="90">Avantgarde</genre>
<genre id3v1="91">Gothic Rock</genre>
<genre id3v1="92">Progress. Rock</genre>
<genre id3v1="93">Psychadel. Rock</genre>
<genre id3v1="94">Symphonic Rock</genre>
<genre id3v1="95">Slow Rock</genre>
<genre id3v1="96">Big Band</genre>
<genre id3v1="97">Chorus</genre>
<genre id3v1="98">Easy Listening</genre>
<genre id3v1="99">Acoustic</genre>
<genre id3v1="100">Humour</genre>
<genre id3v1="101">Speech</genre>
<genre id3v1="102">Chanson</genre>
<genre id3v1="103">Opera</genre>
<genre id3v1="104">Chamber Music</genre>
<genre id3v1="105">Sonata</genre>
<genre id3v1="106">Symphony</genre>
<genre id3v1="107">Booty Bass</genre>
<genre id3v1="108">Primus</genre>
<genre id3v1="109">Porn Groove</genre>
<genre id3v1="110">Satire</genre>
<genre id3v1="111">Slow Jam</genre>
<genre id3v1="112">Club</genre>
<genre id3v1="147">Synthpop</genre>
<genre id3v1="113">Tango</genre>
<genre id3v1="114">Samba</genre>
<genre id3v1="115">Folklore</genre>
<genre id3v1="116">Ballad</genre>
<genre id3v1="117">Power Ballad</genre>
<genre id3v1="118">Rhythmic Soul</genre>
<genre id3v1="119">Freestyle</genre>
<genre id3v1="120">Duet</genre>
<genre id3v1="121">Punk Rock</genre>
<genre id3v1="122">Drum Solo</genre>
<genre id3v1="123">A Capella</genre>
<genre id3v1="124">Euro-House</genre>
<genre id3v1="125">Dance Hall</genre>
<genre id3v1="126">Goa</genre>
<genre id3v1="127">Drum &amp; Bass</genre>
<genre id3v1="128">Club-House</genre>
<genre id3v1="129">Hardcore</genre>
<genre id3v1="18">Techno</genre>
<genre id3v1="51">Techno-Indust.</genre>
<genre id3v1="130">Terror</genre>
<genre id3v1="131">Indie</genre>
<genre id3v1="132">BritPop</genre>
<genre id3v1="133">Negerpunk</genre>
<genre id3v1="134">Polsk Punk</genre>
<genre id3v1="135">Beat</genre>
<genre id3v1="136">Christian Gangsta Rap</genre>
<genre id3v1="137">Heavy Metal</genre>
<genre id3v1="138">Black Metal</genre>
<genre id3v1="139">Crossover</genre>
<genre id3v1="140">Contemporary Christian</genre>
<genre id3v1="141">Christian Rock</genre>
<genre id3v1="142">Merengue</genre>
<genre id3v1="143">Salsa</genre>
<genre id3v1="144">Thrash Metal</genre>
<genre id3v1="145">Anime</genre>
<genre id3v1="146">Jpop</genre>
<genre id3v1="147">Synthpop</genre>
<genre id3v1="60">Top 40</genre>
<genre id3v1="70">Trailer</genre>
<genre id3v1="31">Trance</genre>
<genre id3v1="72">Tribal</genre>
<genre id3v1="27">Trip-Hop</genre>
<genre id3v1="28">Vocal</genre>
</genreList>
......@@ -68,12 +68,14 @@ void GenreList::initializeIndex()
{
kdDebug() << "initializeIndex()" << endl;
index.clear();
index.resize(count());
kdDebug() << "Cleared size: " << index.size() << endl;
index.resize(count() + 1);
for(GenreList::Iterator it = begin(); it != end(); ++it) {
if((*it).getId3v1() >= 0 && (*it).getId3v1() <= int(index.size())) {
// kdDebug() << "initializeIndex() - " << (*it).getId3v1() << " - "
// << index.size() << " - " << count() << " - " << (*it) << endl;
index[(*it).getId3v1()] = QString(*it);
// kdDebug() << "id3v1 #" << (*it).getId3v1() << ", Size: " << index.size() << endl;
}
}
}
......@@ -29,17 +29,17 @@
// if it is, well, all hell will break loose and you'll get a strange segfault.
// public
GenreList GenreListList::id3v1List()
GenreList *GenreListList::id3v1List()
{
if(!id3v1Loaded) {
id3v1.load(locate("data", "juk/id3v1.genreml"));
id3v1->load(locate("data", "juk/id3v1.genreml"));
id3v1Loaded = true;
}
return(id3v1);
}
// private
GenreList GenreListList::id3v1(true);
GenreList *GenreListList::id3v1 = new GenreList(true);
bool GenreListList::id3v1Loaded = false;
////////////////////////////////////////////////////////////////////////////////
......
......@@ -28,10 +28,10 @@ public:
GenreListList();
~GenreListList();
static GenreList id3v1List();
static GenreList *id3v1List();
private:
static GenreList id3v1;
static GenreList *id3v1;
static bool id3v1Loaded;
};
......
......@@ -71,7 +71,7 @@ Tag::Tag(QString file)
///////////////////////////////////////////////////////
if(genre == "(" + QString::number(genreNumber) + ")" || genre == QString::null)
genre = GenreListList::id3v1List().name(genreNumber);
genre = GenreListList::id3v1List()->name(genreNumber);
///////////////////////////////////////////////////////
// convert the year to a string
......
......@@ -26,7 +26,7 @@
#include <qlabel.h>
#include "taggerwidget.h"
//#include "genre.h"
#include "genrelistlist.h"
////////////////////////////////////////////////////////////////////////////////
// public members
......@@ -35,6 +35,7 @@
TaggerWidget::TaggerWidget(QWidget *parent) : QWidget(parent)
{
setupLayout();
readConfig();
}
TaggerWidget::~TaggerWidget() {}
......@@ -131,12 +132,6 @@ void TaggerWidget::setupLayout()
genreBox = new KComboBox(false, bottem, "genreBox");
// add values to the genre box
genreBox->insertItem(QString::null);
// for(int i = 0; i <= Genre::getGenreCount(); i++)
// genreBox->insertItem(Genre::getGenreName(i));
leftColumnLayout->addWidget(genreBox);
// this fills the space at the bottem of the left column
......@@ -188,6 +183,18 @@ void TaggerWidget::setupLayout()
}
}
void TaggerWidget::readConfig()
{
genreList = GenreListList::id3v1List(); // this should later be read from a config file
if(genreList && genreBox) {
genreBox->clear();
// add values to the genre box
genreBox->insertItem(QString::null);
for(GenreList::Iterator it = genreList->begin(); it != genreList->end(); ++it)
genreBox->insertItem((*it));
}
}
////////////////////////////////////////////////////////////////////////////////
// private slots
////////////////////////////////////////////////////////////////////////////////
......
......@@ -26,6 +26,7 @@
#include "filelist.h"
#include "filelistitem.h"
#include "genrelist.h"
class TaggerWidget : public QWidget
{
......@@ -41,6 +42,7 @@ public:
private:
void setupLayout();
void readConfig();
// main visual objects
FileList *taggerList;
......@@ -56,6 +58,8 @@ private:
KLineEdit *bitrateBox;
KEdit *commentBox;
GenreList *genreList;
private slots:
void updateBoxes(FileListItem *item);
};
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment