From c9da71f2828b7940f62e77615915c906c04f8af9 Mon Sep 17 00:00:00 2001 From: trialuser02 Date: Sat, 27 Apr 2013 06:39:56 +0000 Subject: prepare for sid plugin implementation git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@3405 90c681e8-e032-0410-971d-27865f9a5e38 --- src/plugins/Input/sid/decodersidfactory.cpp | 97 +++++++++++++++++++++++++++++ 1 file changed, 97 insertions(+) create mode 100644 src/plugins/Input/sid/decodersidfactory.cpp (limited to 'src/plugins/Input/sid/decodersidfactory.cpp') diff --git a/src/plugins/Input/sid/decodersidfactory.cpp b/src/plugins/Input/sid/decodersidfactory.cpp new file mode 100644 index 000000000..8971c9c2d --- /dev/null +++ b/src/plugins/Input/sid/decodersidfactory.cpp @@ -0,0 +1,97 @@ +/*************************************************************************** + * Copyright (C) 2013 by Ilya Kotov * + * forkotov02@hotmail.ru * + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + * This program is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with this program; if not, write to the * + * Free Software Foundation, Inc., * + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * + ***************************************************************************/ + +#include +#include +#include "decoder_sid.h" +#include "decodersidfactory.h" + +// DecoderSIDFactory + +bool DecoderSIDFactory::supports(const QString &source) const +{ + foreach(QString filter, properties().filters) + { + QRegExp regexp(filter, Qt::CaseInsensitive, QRegExp::Wildcard); + if (regexp.exactMatch(source)) + return true; + } + return false; +} + +bool DecoderSIDFactory::canDecode(QIODevice *) const +{ + return false; +} + +const DecoderProperties DecoderSIDFactory::properties() const +{ + DecoderProperties properties; + properties.name = tr("SID Plugin"); + properties.filters << "*.sid"; + properties.description = tr("SID Files"); + //properties.contentType = ;*/ + properties.shortName = "sid"; + /*properties.hasAbout = true; + properties.hasSettings = false; + properties.noInput = true;*/ + return properties; +} + +Decoder *DecoderSIDFactory::create(const QString &path, QIODevice *input) +{ + return new DecoderSID(input); +} + +QList DecoderSIDFactory::createPlayList(const QString &fileName, bool useMetaData) +{ + QList list; + list << new FileInfo(fileName); + return list; +} + +MetaDataModel* DecoderSIDFactory::createMetaDataModel(const QString &path, QObject *parent) +{ + Q_UNUSED(path); + Q_UNUSED(parent); + return 0; +} + +void DecoderSIDFactory::showSettings(QWidget *parent) +{ + Q_UNUSED(parent); +} + +void DecoderSIDFactory::showAbout(QWidget *parent) +{ + /*-QMessageBox::about (parent, tr("About GME Audio Plugin"), + tr("Qmmp GME Audio Plugin")+"\n"+ + tr("This plugin uses Game_Music_Emu library to play game music files")+"\n"+ + tr("Written by: Ilya Kotov "));*/ +} + +QTranslator *DecoderSIDFactory::createTranslator(QObject *parent) +{ + QTranslator *translator = new QTranslator(parent); + QString locale = Qmmp::systemLanguageID(); + translator->load(QString(":/sid_plugin_") + locale); + return translator; +} +Q_EXPORT_PLUGIN2(gme,DecoderSIDFactory) -- cgit v1.2.3-13-gbd6f