1
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
3
* The contents of this file are subject to the Mozilla Public
4
* License Version 1.1 (the "License"); you may not use this file
5
* except in compliance with the License. You may obtain a copy of
6
* the License at http://www.mozilla.org/MPL/
8
* Software distributed under the License is distributed on an "AS
9
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
10
* implied. See the License for the specific language governing
11
* rights and limitations under the License.
13
* The Original Code is mozilla.org code.
15
* The Initial Developer of the Original Code is Netscape
16
* Communications Corporation. Portions created by Netscape are
17
* Copyright (C) 1999-2000 Netscape Communications Corporation.
18
* All Rights Reserved.
21
* Stuart Parmenter <pavlov@netscape.com>
22
* Mike Pinkerton <pinkerton@netscape.com>
25
#ifndef nsClipboard_h__
26
#define nsClipboard_h__
30
#include "nsIClipboard.h"
31
#include "nsITransferable.h"
32
#include "nsIClipboardOwner.h"
35
class nsITransferable;
36
class nsIClipboardOwner;
40
* Native Clipboard wrapper
43
class nsClipboard : public nsIClipboard
48
virtual ~nsClipboard();
57
NS_IMETHOD SetNativeClipboardData(PRInt32 aWhichClipboard);
58
NS_IMETHOD GetNativeClipboardData(nsITransferable * aTransferable,
59
PRInt32 aWhichClipboard );
60
nsresult GetFormat(const char* aMimeStr, char *format );
62
PRBool mIgnoreEmptyNotification;
63
inline nsITransferable *GetTransferable(PRInt32 aWhichClipboard);
66
nsCOMPtr<nsIClipboardOwner> mSelectionOwner;
67
nsCOMPtr<nsIClipboardOwner> mGlobalOwner;
68
nsCOMPtr<nsITransferable> mSelectionTransferable;
69
nsCOMPtr<nsITransferable> mGlobalTransferable;
71
// Used for communicating pasted data
72
// from the asynchronous X routines back to a blocking paste:
76
#endif // nsClipboard_h__