2 * ControllerView.h - view-component for an control
4 * Copyright (c) 2008 Paul Giblock <drfaygo/at/gmail.com>
6 * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
8 * This program is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU General Public
10 * License as published by the Free Software Foundation; either
11 * version 2 of the License, or (at your option) any later version.
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * General Public License for more details.
18 * You should have received a copy of the GNU General Public
19 * License along with this program (see COPYING); if not, write to the
20 * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
21 * Boston, MA 02110-1301 USA.
25 #ifndef _CONTROLLER_VIEW_H
26 #define _CONTROLLER_VIEW_H
28 #include <QtGui/QWidget>
30 #include "AutomatableModel.h"
31 #include "Controller.h"
32 #include "ModelView.h"
42 class ControllerView
: public QWidget
, public ModelView
46 ControllerView( Controller
* _controller
, QWidget
* _parent
);
47 virtual ~ControllerView();
49 inline Controller
* getController()
51 return( castModel
<Controller
>() );
54 inline const Controller
* getController() const
56 return( castModel
<Controller
>() );
62 void deleteController();
68 void deleteController( ControllerView
* _view
);
72 virtual void contextMenuEvent( QContextMenuEvent
* _me
);
73 virtual void paintEvent( QPaintEvent
* _pe
);
74 virtual void modelChanged();
75 virtual void mouseDoubleClickEvent( QMouseEvent
* event
);
80 ledCheckBox
* m_bypass
;
81 QMdiSubWindow
* m_subWindow
;
82 ControllerDialog
* m_controllerDlg
;