Fix a crash when recording was aborted due to writer error
[skype-call-recorder.git] / recorder.h
blob931e5e16734b7d1e98adbbd2bf9c7a316c80272c
1 /*
2 Skype Call Recorder
3 Copyright (C) 2008 jlh (jlh at gmx dot ch)
5 This program is free software; you can redistribute it and/or modify it
6 under the terms of the GNU General Public License as published by the
7 Free Software Foundation; either version 2 of the License, version 3 of
8 the License, or (at your option) any later version.
10 This program is distributed in the hope that it will be useful, but
11 WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 General Public License for more details.
15 You should have received a copy of the GNU General Public License along
16 with this program; if not, write to the Free Software Foundation, Inc.,
17 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
19 The GNU General Public License version 2 is included with the source of
20 this program under the file name COPYING. You can also get a copy on
21 http://www.fsf.org/
24 #ifndef RECORDER_H
25 #define RECORDER_H
27 #include <QApplication>
28 #include <QStringList>
30 class TrayIcon;
31 class QTextEdit;
32 class QString;
33 class PreferencesDialog;
34 class Skype;
35 class CallHandler;
37 class Recorder : public QApplication {
38 Q_OBJECT
39 public:
40 Recorder(int, char **);
41 virtual ~Recorder();
43 void debugMessage(const QString &);
45 public slots:
46 void about();
47 void openSettings();
48 void browseCalls();
49 void quitConfirmation();
50 void skypeNotify(const QString &);
51 void skypeConnected();
52 void skypeConnectionFailed(const QString &);
53 void saveSettings();
55 private:
56 void loadSettings();
57 void setupGUI();
58 void setupSkype();
59 void setupCallHandler();
61 QString getConfigFile() const;
63 private:
64 Skype *skype;
65 CallHandler *callHandler;
66 PreferencesDialog *preferencesDialog;
67 TrayIcon *trayIcon;
68 QTextEdit *debugWidget;
69 QStringList savedDebugMessages;
71 private:
72 // disabled
73 Recorder(const Recorder &);
74 Recorder &operator=(const Recorder &);
77 #endif