Chris@732: /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */ Chris@732: Chris@732: /* Chris@732: Sonic Visualiser Chris@732: An audio file viewer and annotation editor. Chris@732: Centre for Digital Music, Queen Mary, University of London. Chris@732: This file copyright 2006 Chris Cannam. Chris@732: Chris@732: This program is free software; you can redistribute it and/or Chris@732: modify it under the terms of the GNU General Public License as Chris@732: published by the Free Software Foundation; either version 2 of the Chris@732: License, or (at your option) any later version. See the file Chris@732: COPYING included with this distribution for more information. Chris@732: */ Chris@732: Chris@732: #ifndef _SHOW_LAYER_COMMAND_H_ Chris@732: #define _SHOW_LAYER_COMMAND_H_ Chris@732: Chris@732: #include "base/Command.h" Chris@732: Chris@732: class ShowLayerCommand : public Command Chris@732: { Chris@732: public: Chris@732: ShowLayerCommand(View *view, Layer *layer, bool show, QString commandName) : Chris@732: m_view(view), m_layer(layer), m_show(show), m_name(commandName) { } Chris@1406: void execute() override { Chris@732: m_layer->showLayer(m_view, m_show); Chris@732: } Chris@1406: void unexecute() override { Chris@732: m_layer->showLayer(m_view, !m_show); Chris@732: } Chris@1406: QString getName() const override { Chris@732: return m_name; Chris@732: } Chris@732: protected: Chris@732: View *m_view; Chris@732: Layer *m_layer; Chris@732: bool m_show; Chris@732: QString m_name; Chris@732: }; Chris@732: Chris@732: #endif