1 /***************************************************************************
2           ViewManager.h  -  abstract interface for managing signal views
3                             -------------------
4     begin                : Sat Mar 27 2010
5     copyright            : (C) 2010 by Thomas Eschenbacher
6     email                : Thomas.Eschenbacher@gmx.de
7  ***************************************************************************/
8 
9 /***************************************************************************
10  *                                                                         *
11  *   This program is free software; you can redistribute it and/or modify  *
12  *   it under the terms of the GNU General Public License as published by  *
13  *   the Free Software Foundation; either version 2 of the License, or     *
14  *   (at your option) any later version.                                   *
15  *                                                                         *
16  ***************************************************************************/
17 
18 #ifndef VIEW_MANAGER_H
19 #define VIEW_MANAGER_H
20 
21 class QWidget;
22 
23 namespace Kwave
24 {
25 
26     class SignalView;
27 
28     /**
29      * Abstract interface for registering a SignalView in the main widget
30      */
31     class Q_DECL_EXPORT ViewManager
32     {
33     public:
34 	/** Destructor */
~ViewManager()35 	virtual ~ViewManager() {}
36 
37 	/**
38 	 * Insert a new signal view into this widget (or the upper/lower
39 	 * dock area.
40 	 * @param view the signal view, must not be a null pointer
41 	 * @param controls a widget with controls, optionally, can be null
42 	 */
43 	virtual void insertView(Kwave::SignalView *view, QWidget *controls) = 0;
44     };
45 }
46 
47 #endif /* VIEW_MANAGER_H */
48 
49 //***************************************************************************
50 //***************************************************************************
51