2012-05-21 04:12:37 -07: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/. */
|
2007-03-22 10:30:00 -07:00
|
|
|
|
|
|
|
#ifndef _nsClipboard_h
|
|
|
|
#define _nsClipboard_h
|
|
|
|
|
|
|
|
#include "nsBaseClipboard.h"
|
|
|
|
class nsITransferable;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Native OS/2 Clipboard wrapper
|
|
|
|
*/
|
|
|
|
|
|
|
|
struct FormatRecord;
|
|
|
|
|
2011-03-05 12:57:00 -08:00
|
|
|
class nsClipboard : public nsBaseClipboard
|
2007-03-22 10:30:00 -07:00
|
|
|
{
|
|
|
|
|
|
|
|
public:
|
|
|
|
nsClipboard();
|
|
|
|
virtual ~nsClipboard();
|
|
|
|
|
|
|
|
// nsIClipboard
|
2007-11-20 11:06:30 -08:00
|
|
|
NS_IMETHOD HasDataMatchingFlavors(const char** aFlavorList, PRUint32 aLength,
|
2011-09-28 23:19:26 -07:00
|
|
|
PRInt32 aWhichClipboard, bool *_retval);
|
2007-03-22 10:30:00 -07:00
|
|
|
|
|
|
|
protected:
|
|
|
|
NS_IMETHOD SetNativeClipboardData(PRInt32 aWhichClipboard);
|
|
|
|
NS_IMETHOD GetNativeClipboardData(nsITransferable *aTransferable, PRInt32 aWhichClipboard);
|
|
|
|
|
|
|
|
enum ClipboardAction
|
|
|
|
{
|
|
|
|
Read,
|
|
|
|
Write
|
|
|
|
};
|
|
|
|
|
2011-03-05 12:57:00 -08:00
|
|
|
PRUint32 GetFormatID(const char *aMimeStr);
|
2011-09-28 23:19:26 -07:00
|
|
|
bool GetClipboardData(const char *aFlavour);
|
|
|
|
bool GetClipboardDataByID(PRUint32 aFormatID, const char *aFlavor);
|
2007-03-22 10:30:00 -07:00
|
|
|
void SetClipboardData(const char *aFlavour);
|
|
|
|
nsresult DoClipboardAction(ClipboardAction aAction);
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|