1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
|
// Copyright 2013 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// This file provides API functions for the file manager to act as the file
// dialog for opening and saving files.
#ifndef CHROME_BROWSER_CHROMEOS_EXTENSIONS_FILE_MANAGER_PRIVATE_API_DIALOG_H_
#define CHROME_BROWSER_CHROMEOS_EXTENSIONS_FILE_MANAGER_PRIVATE_API_DIALOG_H_
#include <vector>
#include "chrome/browser/chromeos/extensions/file_manager/private_api_base.h"
namespace ui {
struct SelectedFileInfo;
}
namespace extensions {
// Cancel file selection Dialog. Closes the dialog window.
class FileManagerPrivateCancelDialogFunction
: public LoggedAsyncExtensionFunction {
public:
DECLARE_EXTENSION_FUNCTION("fileManagerPrivate.cancelDialog",
FILEMANAGERPRIVATE_CANCELDIALOG)
protected:
virtual ~FileManagerPrivateCancelDialogFunction() {}
// AsyncExtensionFunction overrides.
virtual bool RunAsync() override;
};
class FileManagerPrivateSelectFileFunction
: public LoggedAsyncExtensionFunction {
public:
DECLARE_EXTENSION_FUNCTION("fileManagerPrivate.selectFile",
FILEMANAGERPRIVATE_SELECTFILE)
protected:
virtual ~FileManagerPrivateSelectFileFunction() {}
// AsyncExtensionFunction overrides.
virtual bool RunAsync() override;
private:
// A callback method to handle the result of GetSelectedFileInfo.
void GetSelectedFileInfoResponse(
int index,
const std::vector<ui::SelectedFileInfo>& files);
};
// Select multiple files. Closes the dialog window.
class FileManagerPrivateSelectFilesFunction
: public LoggedAsyncExtensionFunction {
public:
DECLARE_EXTENSION_FUNCTION("fileManagerPrivate.selectFiles",
FILEMANAGERPRIVATE_SELECTFILES)
protected:
virtual ~FileManagerPrivateSelectFilesFunction() {}
// AsyncExtensionFunction overrides.
virtual bool RunAsync() override;
private:
// A callback method to handle the result of GetSelectedFileInfo.
void GetSelectedFileInfoResponse(
const std::vector<ui::SelectedFileInfo>& files);
};
} // namespace extensions
#endif // CHROME_BROWSER_CHROMEOS_EXTENSIONS_FILE_MANAGER_PRIVATE_API_DIALOG_H_
|