kwave  18.07.70
ClipBoard.h
Go to the documentation of this file.
1 /***************************************************************************
2  ClipBoard.h - the Kwave clipboard
3  -------------------
4  begin : Tue Jun 26, 2001
5  copyright : (C) 2001 by Thomas Eschenbacher
6  email : Thomas Eschenbacher <thomas.eschenbacher@gmx.de>
7 
8  ***************************************************************************/
9 
10 /***************************************************************************
11  * *
12  * This program is free software; you can redistribute it and/or modify *
13  * it under the terms of the GNU General Public License as published by *
14  * the Free Software Foundation; either version 2 of the License, or *
15  * (at your option) any later version. *
16  * *
17  ***************************************************************************/
18 
19 #ifndef CLIP_BOARD_H
20 #define CLIP_BOARD_H
21 
22 #include "config.h"
23 
24 #include <QClipboard>
25 #include <QtGlobal>
26 #include <QObject>
27 
28 #include "libkwave/Sample.h"
29 
30 class QWidget;
31 
32 namespace Kwave
33 {
34 
35  class SignalManager;
36 
41  class Q_DECL_EXPORT ClipBoard: public QObject
42  {
43  Q_OBJECT
44  public:
45 
47  ClipBoard();
48 
50  virtual ~ClipBoard();
51 
53  static ClipBoard &instance();
54 
65  void copy(QWidget *widget, Kwave::SignalManager &signal_manager,
66  const QList<unsigned int> &track_list,
67  sample_index_t offset, sample_index_t length);
68 
79  bool paste(QWidget *widget, Kwave::SignalManager &signal_manager,
80  sample_index_t offset, sample_index_t length);
81 
86  void clear();
87 
91  bool isEmpty();
92 
93  signals:
94 
101  void clipboardChanged(bool data_available);
102 
103  public slots:
104 
110  void slotChanged(QClipboard::Mode mode);
111 
112  private:
113 
115  unsigned int m_tracks;
116 
117  };
118 }
119 
120 #endif /* CLIP_BOARD_H */
121 
122 //***************************************************************************
123 //***************************************************************************
Definition: App.h:33
quint64 sample_index_t
Definition: Sample.h:28
unsigned int m_tracks
Definition: ClipBoard.h:115