vfs: check userland buffers before reading them.
[haiku.git] / src / apps / expander / DirectoryFilePanel.h
blob13654ae946ed7cee0fa4e8dbc3205655ebc76223
1 /*
2 * Copyright 2004-2007 Haiku, Inc. All rights reserved.
3 * Distributed under the terms of the MIT License.
5 * Authors:
6 * Jérôme Duval
7 */
8 #ifndef _DIRECTORY_FILE_PANEL_H
9 #define _DIRECTORY_FILE_PANEL_H
12 #include <FilePanel.h>
13 #include <Button.h>
16 static const uint32 MSG_DIRECTORY = 'mDIR';
19 class DirectoryRefFilter : public BRefFilter {
20 public:
21 DirectoryRefFilter();
22 bool Filter(const entry_ref* ref, BNode* node,
23 struct stat_beos* stat,
24 const char* mimeType);
28 class DirectoryFilePanel : public BFilePanel {
29 public:
30 DirectoryFilePanel(
31 file_panel_mode mode = B_OPEN_PANEL,
32 BMessenger* target = NULL,
33 const entry_ref* startDirectory = NULL,
34 uint32 nodeFlavors = 0,
35 bool allowMultipleSelection = true,
36 BMessage* message = NULL,
37 BRefFilter* filter = NULL,
38 bool modal = false,
39 bool hideWhenDone = true);
40 virtual ~DirectoryFilePanel() {};
42 virtual void SelectionChanged();
43 virtual void Show();
44 // overrides non-virtual BFilePanel::Show()
46 protected:
47 BButton* fCurrentButton;
51 #endif // _DIRECTORY_FILE_PANEL_H