/*************************************************************************** analyzerfactory.cpp - description ------------------- begin : Fre Nov 15 2002 copyright : (C) 2002 by Mark Kretschmann email : markey@web.de ***************************************************************************/ /*************************************************************************** * * * 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. * * * ***************************************************************************/ #include //for HAVE_TQGLWIDGET macro #include "amarokcore/amarokconfig.h" #include "analyzerbase.h" //declaration here #include "baranalyzer.h" #include "boomanalyzer.h" #include "sonogram.h" #include "turbine.h" #include "blockanalyzer.h" #ifdef HAVE_TQGLWIDGET #include "glanalyzer.h" #include "glanalyzer2.h" #include "glanalyzer3.h" #endif #include #include //separate from analyzerbase.cpp to save compile time TQWidget *Analyzer::Factory::createAnalyzer( TQWidget *tqparent ) { //new XmmsWrapper(); //toplevel TQWidget *analyzer = 0; switch( AmarokConfig::currentAnalyzer() ) { case 2: analyzer = new Sonogram( tqparent ); break; case 1: analyzer = new TurbineAnalyzer( tqparent ); break; case 3: analyzer = new BarAnalyzer( tqparent ); break; case 4: analyzer = new BlockAnalyzer( tqparent ); break; #ifdef HAVE_TQGLWIDGET case 5: analyzer = new GLAnalyzer( tqparent ); break; case 6: analyzer = new GLAnalyzer2( tqparent ); break; case 7: analyzer = new GLAnalyzer3( tqparent ); break; case 8: #else case 5: #endif analyzer = new TQLabel( i18n( "Click for Analyzers" ), tqparent ); //blank analyzer to satisfy Grue static_cast(analyzer)->tqsetAlignment( TQt::AlignCenter ); break; default: AmarokConfig::setCurrentAnalyzer( 0 ); case 0: analyzer = new BoomAnalyzer( tqparent ); } return analyzer; } TQWidget *Analyzer::Factory::createPlaylistAnalyzer( TQWidget *tqparent) { TQWidget *analyzer = 0; switch( AmarokConfig::currentPlaylistAnalyzer() ) { case 1: analyzer = new TurbineAnalyzer( tqparent ); break; case 2: analyzer = new Sonogram( tqparent ); break; case 3: analyzer = new BoomAnalyzer( tqparent ); break; #ifdef HAVE_TQGLWIDGET case 4: analyzer = new GLAnalyzer( tqparent ); break; case 5: analyzer = new GLAnalyzer2( tqparent ); break; case 6: analyzer = new GLAnalyzer3( tqparent ); break; case 7: #else case 4: #endif analyzer = new TQLabel( i18n( "Click for Analyzers" ), tqparent ); //blank analyzer to satisfy Grue static_cast(analyzer)->tqsetAlignment( TQt::AlignCenter ); break; default: AmarokConfig::setCurrentPlaylistAnalyzer( 0 ); case 0: analyzer = new BlockAnalyzer( tqparent ); break; } return analyzer; }