]> git.sesse.net Git - vlc/blob - modules/gui/macosx/CrashReporter.h
macosx: split crash log handling both from VLCMain and the Main Menu nib file
[vlc] / modules / gui / macosx / CrashReporter.h
1 /*****************************************************************************
2  * CrashReporter.h: Mac OS X interface crash reporter
3  *****************************************************************************
4  * Copyright (C) 2009-2013 VLC authors and VideoLAN
5  * $Id$
6  *
7  * Authors: Felix Paul Kühne <fkuehne at videolan dot org>
8  *          Pierre d'Herbemont <pdherbemont # videolan org>
9  *
10  * This program is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation; either version 2 of the License, or
13  * (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with this program; if not, write to the Free Software
22  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
23  *****************************************************************************/
24
25 #import <Cocoa/Cocoa.h>
26
27 @class VLCCrashReporter;
28 @protocol VLCCrashReporterDelegate <NSObject>
29
30 @required
31 - (void)reporterFinishedAction:(VLCCrashReporter *)reporter;
32
33 @end
34
35 @interface VLCCrashReporter : NSObject
36 {
37     IBOutlet NSButton * _crashrep_dontSend_btn;
38     IBOutlet NSButton * _crashrep_send_btn;
39     IBOutlet NSTextView * _crashrep_fld;
40     IBOutlet NSTextField * _crashrep_title_txt;
41     IBOutlet NSTextField * _crashrep_desc_txt;
42     IBOutlet NSWindow * _crashrep_win;
43     IBOutlet NSButton * _crashrep_includeEmail_ckb;
44     IBOutlet NSButton * _crashrep_dontaskagain_ckb;
45     IBOutlet NSTextField * _crashrep_includeEmail_txt;
46     NSURLConnection * _crashLogURLConnection;
47 }
48 + (VLCCrashReporter *)sharedInstance;
49
50 @property (retain) id delegate;
51
52 - (void)showDialogAndSendLogIfDesired;
53
54 - (IBAction)buttonAction:(id)sender;
55
56 @end