libroot/posix/stdio: Remove unused portions.
[haiku.git] / src / apps / mediaconverter / MediaConverterWindow.h
blob3319214c44d67a1a2e08b68aded5e895c9489ab4
1 // Copyright 1999, Be Incorporated. All Rights Reserved.
2 // Copyright 2000-2004, Jun Suzuki. All Rights Reserved.
3 // Copyright 2007, Stephan Aßmus. All Rights Reserved.
4 // Copyright 2010-2013, Haiku, Inc. All Rights Reserved.
5 // This file may be used under the terms of the Be Sample Code License.
6 #ifndef MEDIA_CONVERTER_WINDOW_H
7 #define MEDIA_CONVERTER_WINDOW_H
10 #include <Directory.h>
11 #include <MediaDefs.h>
12 #include <MediaFormats.h>
13 #include <Window.h>
16 class BBox;
17 class BButton;
18 class BFilePanel;
19 class BMediaFile;
20 class BMenuField;
21 class BSlider;
22 class BStringView;
23 class BTextControl;
24 class MediaFileInfoView;
25 class MediaFileListView;
26 class StatusView;
28 class MediaConverterWindow : public BWindow {
29 public:
30 MediaConverterWindow(BRect frame);
31 virtual ~MediaConverterWindow();
33 protected:
34 virtual void MessageReceived(BMessage* message);
35 virtual bool QuitRequested();
37 public:
38 void LanguageChanged();
40 void BuildFormatMenu();
41 void BuildAudioVideoMenus();
42 void GetSelectedFormatInfo(
43 media_file_format** _format,
44 media_codec_info** _audio,
45 media_codec_info** _video);
47 void SetStatusMessage(const char *message);
48 void SetFileMessage(const char *message);
50 bool AddSourceFile(BMediaFile* file,
51 const entry_ref& ref);
52 void RemoveSourceFile(int32 index);
53 int32 CountSourceFiles();
54 status_t GetSourceFileAt(int32 index, BMediaFile** _file,
55 entry_ref* ref);
57 void SourceFileSelectionChanged();
59 void SetEnabled(bool enabled, bool convertEnabled);
60 bool IsEnabled();
62 const char* StartDuration() const;
63 const char* EndDuration() const;
65 int32 AudioQuality() const
66 { return fAudioQuality; }
67 int32 VideoQuality() const
68 { return fVideoQuality; }
70 void SetAudioQualityLabel(const char* label);
71 void SetVideoQualityLabel(const char* label);
73 BDirectory OutputDirectory() const;
75 void TruncateOutputFolderPath();
77 private:
78 void _UpdateLabels();
79 void _UpdateBBoxLayoutInsets(BBox* box);
80 void _CreateMenu();
81 void _DestroyMenu();
82 void _SetOutputFolder(BEntry entry);
84 private:
85 BButton* fConvertButton;
87 BButton* fDestButton;
88 BButton* fPreviewButton;
89 BBox* fSourcesBox;
90 BBox* fInfoBox;
91 BBox* fOutputBox;
93 BMenuBar* fMenuBar;
94 BMenuField* fFormatMenu;
95 BMenuField* fVideoMenu;
96 BMenuField* fAudioMenu;
97 BStringView* fFileStatus;
98 BStringView* fStatus;
99 MediaFileListView* fListView;
100 MediaFileInfoView* fInfoView;
101 BStringView* fOutputFolder;
102 BTextControl* fStartDurationTC;
103 BTextControl* fEndDurationTC;
105 BSlider* fVideoQualitySlider;
106 BSlider* fAudioQualitySlider;
108 int32 fVideoQuality;
109 int32 fAudioQuality;
111 BFilePanel* fSaveFilePanel;
112 BFilePanel* fOpenFilePanel;
114 BDirectory fOutputDir;
115 bool fOutputDirSpecified;
117 bool fEnabled;
118 bool fConverting;
119 bool fCancelling;
122 #endif // MEDIA_CONVERTER_WINDOW_H