From dbe1c2bb4eda63205b744411ddcaf12d5d6436fb Mon Sep 17 00:00:00 2001 From: trialuser02 Date: Sun, 31 Jan 2010 21:57:58 +0000 Subject: optimized settings dialog git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@1533 90c681e8-e032-0410-971d-27865f9a5e38 --- src/ui/visualmenu.cpp | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) (limited to 'src/ui/visualmenu.cpp') diff --git a/src/ui/visualmenu.cpp b/src/ui/visualmenu.cpp index 94a116057..6e5ff2d90 100644 --- a/src/ui/visualmenu.cpp +++ b/src/ui/visualmenu.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2007 by Ilya Kotov * + * Copyright (C) 2007-2010 by Ilya Kotov * * forkotov02@hotmail.ru * * * * This program is free software; you can redistribute it and/or modify * @@ -26,17 +26,13 @@ #include "pluginitem.h" #include "visualmenu.h" -VisualMenu::VisualMenu(QWidget *parent) - : QMenu(tr("Visualization"), parent) +VisualMenu::VisualMenu(QWidget *parent) : QMenu(tr("Visualization"), parent) { VisualFactory *factory = 0; foreach(factory, *Visual::factories()) { - QAction *act = this->addAction(factory->properties().name); - act->setCheckable (TRUE); - act->setChecked (Visual::isEnabled(factory)); - VisualPluginItem *vi = new VisualPluginItem(this,factory); - connect(act, SIGNAL(toggled(bool)), vi, SLOT(select(bool))); + VisualAction *act = new VisualAction(factory, this); + addAction(act); } } @@ -51,3 +47,17 @@ void VisualMenu::updateActions() actions()[i]->setChecked(Visual::isEnabled(Visual::factories()->at(i))); } } + +VisualAction::VisualAction(VisualFactory *factory, QWidget *parent) : + QAction(factory->properties().name, parent) +{ + setCheckable (TRUE); + setChecked (Visual::isEnabled(factory)); + m_factory = factory; + connect(this, SIGNAL(triggered(bool)), SLOT(select(bool))); +} + +void VisualAction::select(bool select) +{ + Visual::setEnabled(m_factory, select); +} -- cgit v1.2.3-13-gbd6f