Credit Andrew - fix vorbis audio which was scratchy and ensure aging plugin does...
[goodguy/cinelerra.git] / cinelerra-5.1 / cinelerra / browsebutton.h
1
2 /*
3  * CINELERRA
4  * Copyright (C) 2008 Adam Williams <broadcast at earthling dot net>
5  * Copyright (C) 2003-2016 Cinelerra CV contributors
6  *
7  * This program is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation; either version 2 of the License, or
10  * (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program; if not, write to the Free Software
19  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
20  *
21  */
22
23 #ifndef BROWSEBUTTON_H
24 #define BROWSEBUTTON_H
25
26 #include "guicast.h"
27 #include "mutex.inc"
28 #include "theme.inc"
29 #include "thread.h"
30
31 class BrowseButtonWindow;
32
33 class BrowseButton : public BC_Button, public Thread
34 {
35 public:
36         BrowseButton(Theme *theme,
37                 BC_WindowBase *parent_window,
38                 BC_TextBox *textbox,
39                 int x,
40                 int y,
41                 const char *init_directory,
42                 const char *title,
43                 const char *caption,
44                 int want_directory = 0);
45         ~BrowseButton();
46
47         int handle_event();
48         void run();
49         int want_directory;
50         char result[1024];
51         const char *title;
52         const char *caption;
53         const char *init_directory;
54         BC_TextBox *textbox;
55         Theme *theme;
56         BC_WindowBase *parent_window;
57         BrowseButtonWindow *gui;
58         Mutex *startup_lock;
59         int x, y;
60 };
61
62 class BrowseButtonWindow : public BC_FileBox
63 {
64 public:
65         BrowseButtonWindow(Theme *theme,
66                 int x, int y,
67                 BC_WindowBase *parent_window,
68                 const char *init_directory,
69                 const char *title,
70                 const char *caption,
71                 int want_directory);
72         ~BrowseButtonWindow();
73 };
74
75
76
77
78
79 #endif