2001-09-29 00:14:13 +04:00
|
|
|
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
2012-05-21 15:12:37 +04: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-03-26 18:01:23 +03:00
|
|
|
|
|
|
|
#ifndef nsBaseClipboard_h__
|
|
|
|
#define nsBaseClipboard_h__
|
|
|
|
|
|
|
|
#include "nsIClipboard.h"
|
|
|
|
#include "nsITransferable.h"
|
2017-10-12 19:03:35 +03:00
|
|
|
#include "nsCOMPtr.h"
|
1999-03-26 18:01:23 +03:00
|
|
|
|
|
|
|
class nsITransferable;
|
|
|
|
class nsIClipboardOwner;
|
|
|
|
class nsIWidget;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Native Win32 BaseClipboard wrapper
|
|
|
|
*/
|
|
|
|
|
|
|
|
class nsBaseClipboard : public nsIClipboard {
|
|
|
|
public:
|
|
|
|
nsBaseClipboard();
|
|
|
|
|
|
|
|
// nsISupports
|
|
|
|
NS_DECL_ISUPPORTS
|
|
|
|
|
1999-09-05 06:28:38 +04:00
|
|
|
// nsIClipboard
|
|
|
|
NS_DECL_NSICLIPBOARD
|
2018-11-30 13:46:48 +03:00
|
|
|
|
1999-03-26 18:01:23 +03:00
|
|
|
protected:
|
2014-07-06 00:35:35 +04:00
|
|
|
virtual ~nsBaseClipboard();
|
1999-03-26 18:01:23 +03:00
|
|
|
|
2012-08-22 19:56:38 +04:00
|
|
|
NS_IMETHOD SetNativeClipboardData(int32_t aWhichClipboard) = 0;
|
|
|
|
NS_IMETHOD GetNativeClipboardData(nsITransferable* aTransferable,
|
|
|
|
int32_t aWhichClipboard) = 0;
|
1999-03-26 18:01:23 +03:00
|
|
|
|
2013-07-09 22:39:46 +04:00
|
|
|
bool mEmptyingForSetData;
|
2011-09-29 10:19:26 +04:00
|
|
|
bool mIgnoreEmptyNotification;
|
2016-01-20 16:45:00 +03:00
|
|
|
nsCOMPtr<nsIClipboardOwner> mClipboardOwner;
|
|
|
|
nsCOMPtr<nsITransferable> mTransferable;
|
1999-03-26 18:01:23 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif // nsBaseClipboard_h__
|