2012-05-21 11:12:37 +00:00
|
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
1999-06-28 23:39:35 +00:00
|
|
|
|
|
|
|
#ifndef _nsClipboard_h
|
|
|
|
#define _nsClipboard_h
|
|
|
|
|
|
|
|
#include "nsBaseClipboard.h"
|
2000-10-02 22:10:26 +00:00
|
|
|
class nsITransferable;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Native OS/2 Clipboard wrapper
|
|
|
|
*/
|
1999-06-28 23:39:35 +00:00
|
|
|
|
|
|
|
struct FormatRecord;
|
|
|
|
|
2011-03-05 20:57:00 +00:00
|
|
|
class nsClipboard : public nsBaseClipboard
|
1999-06-28 23:39:35 +00:00
|
|
|
{
|
2000-10-02 22:10:26 +00:00
|
|
|
|
|
|
|
public:
|
|
|
|
nsClipboard();
|
|
|
|
virtual ~nsClipboard();
|
|
|
|
|
|
|
|
// nsIClipboard
|
2012-08-22 15:56:38 +00:00
|
|
|
NS_IMETHOD HasDataMatchingFlavors(const char** aFlavorList, uint32_t aLength,
|
|
|
|
int32_t aWhichClipboard, bool *_retval);
|
2000-10-02 22:10:26 +00:00
|
|
|
|
|
|
|
protected:
|
2012-08-22 15:56:38 +00:00
|
|
|
NS_IMETHOD SetNativeClipboardData(int32_t aWhichClipboard);
|
|
|
|
NS_IMETHOD GetNativeClipboardData(nsITransferable *aTransferable, int32_t aWhichClipboard);
|
2000-10-02 22:10:26 +00:00
|
|
|
|
|
|
|
enum ClipboardAction
|
|
|
|
{
|
|
|
|
Read,
|
|
|
|
Write
|
|
|
|
};
|
|
|
|
|
2012-08-22 15:56:38 +00:00
|
|
|
uint32_t GetFormatID(const char *aMimeStr);
|
2011-09-29 06:19:26 +00:00
|
|
|
bool GetClipboardData(const char *aFlavour);
|
2012-08-22 15:56:38 +00:00
|
|
|
bool GetClipboardDataByID(uint32_t aFormatID, const char *aFlavor);
|
2000-10-02 22:10:26 +00:00
|
|
|
void SetClipboardData(const char *aFlavour);
|
|
|
|
nsresult DoClipboardAction(ClipboardAction aAction);
|
1999-06-28 23:39:35 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|