mirror of
https://github.com/LMMS/lmms.git
synced 2026-01-25 14:58:07 -05:00
* made modelView take a QWidget-pointer argument * trackContentObject-ctor now calls track::addTCO() directly * optimize various loops to use iterators/const_iterators instead of a running index variable * drag'n'drop doesn't fool around with pointers anymore - instead use unique journalling-IDs * moved drag'n'drop handling code from knob to automatableModelView so that all controls can benefit from that git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1164 0778d3d1-df1d-0410-868b-ea421aaaa00d
96 lines
2.2 KiB
C++
96 lines
2.2 KiB
C++
/*
|
|
* effect_view.h - view-component for an effect
|
|
*
|
|
* Copyright (c) 2006-2007 Danny McRae <khjklujn/at/users.sourceforge.net>
|
|
* Copyright (c) 2007-2008 Tobias Doerffel <tobydox/at/users.sourceforge.net>
|
|
*
|
|
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
|
|
*
|
|
* 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 (see COPYING); if not, write to the
|
|
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
* Boston, MA 02110-1301 USA.
|
|
*
|
|
*/
|
|
|
|
#ifndef _EFFECT_VIEW_H
|
|
#define _EFFECT_VIEW_H
|
|
|
|
#include "automatable_model.h"
|
|
#include "plugin_view.h"
|
|
#include "effect.h"
|
|
|
|
class QGroupBox;
|
|
class QLabel;
|
|
class QPushButton;
|
|
class QMdiSubWindow;
|
|
|
|
class audioPort;
|
|
class effectControlDialog;
|
|
class knob;
|
|
class ledCheckBox;
|
|
class tempoSyncKnob;
|
|
|
|
|
|
class effectView : public pluginView
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
effectView( effect * _model, QWidget * _parent );
|
|
virtual ~effectView();
|
|
|
|
inline effect * getEffect( void )
|
|
{
|
|
return( castModel<effect>() );
|
|
}
|
|
inline const effect * getEffect( void ) const
|
|
{
|
|
return( castModel<effect>() );
|
|
}
|
|
|
|
|
|
public slots:
|
|
void editControls( void );
|
|
void moveUp( void );
|
|
void moveDown( void );
|
|
void deletePlugin( void );
|
|
void displayHelp( void );
|
|
void closeEffects( void );
|
|
|
|
|
|
signals:
|
|
void moveUp( effectView * _plugin );
|
|
void moveDown( effectView * _plugin );
|
|
void deletePlugin( effectView * _plugin );
|
|
|
|
|
|
protected:
|
|
virtual void contextMenuEvent( QContextMenuEvent * _me );
|
|
virtual void paintEvent( QPaintEvent * _pe );
|
|
virtual void modelChanged( void );
|
|
|
|
|
|
private:
|
|
QPixmap m_bg;
|
|
ledCheckBox * m_bypass;
|
|
knob * m_wetDry;
|
|
tempoSyncKnob * m_autoQuit;
|
|
knob * m_gate;
|
|
QMdiSubWindow * m_subWindow;
|
|
effectControlDialog * m_controlView;
|
|
bool m_show;
|
|
|
|
} ;
|
|
|
|
#endif
|