Class Clipboard
- java.lang.Object
-
- java.awt.datatransfer.Clipboard
-
public class Clipboard extends Object
A class that implements a mechanism to transfer data using cut/copy/paste operations.FlavorListener
s may be registered on an instance of the Clipboard class to be notified about changes to the set ofDataFlavor
s available on this clipboard (seeaddFlavorListener(java.awt.datatransfer.FlavorListener)
).
-
-
Field Summary
Fields Modifier and Type Field and Description protected Transferable
contents
protected ClipboardOwner
owner
-
Constructor Summary
Constructors Constructor and Description Clipboard(String name)
Creates a clipboard object.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description void
addFlavorListener(FlavorListener listener)
Registers the specifiedFlavorListener
to receiveFlavorEvent
s from this clipboard.DataFlavor[]
getAvailableDataFlavors()
Returns an array ofDataFlavor
s in which the current contents of this clipboard can be provided.Transferable
getContents(Object requestor)
Returns a transferable object representing the current contents of the clipboard.Object
getData(DataFlavor flavor)
Returns an object representing the current contents of this clipboard in the specifiedDataFlavor
.FlavorListener[]
getFlavorListeners()
Returns an array of all theFlavorListener
s currently registered on thisClipboard
.String
getName()
Returns the name of this clipboard object.boolean
isDataFlavorAvailable(DataFlavor flavor)
Returns whether or not the current contents of this clipboard can be provided in the specifiedDataFlavor
.void
removeFlavorListener(FlavorListener listener)
Removes the specifiedFlavorListener
so that it no longer receivesFlavorEvent
s from thisClipboard
.void
setContents(Transferable contents, ClipboardOwner owner)
Sets the current contents of the clipboard to the specified transferable object and registers the specified clipboard owner as the owner of the new contents.
-
-
-
Field Detail
owner
protected ClipboardOwner owner
contents
protected Transferable contents
-
Constructor Detail
Clipboard
public Clipboard(String name)
Creates a clipboard object.- See Also:
-
Toolkit.getSystemClipboard()
-
Method Detail
getName
public String getName()
Returns the name of this clipboard object.- See Also:
-
Toolkit.getSystemClipboard()
setContents
public void setContents(Transferable contents, ClipboardOwner owner)
Sets the current contents of the clipboard to the specified transferable object and registers the specified clipboard owner as the owner of the new contents.If there is an existing owner different from the argument
owner
, that owner is notified that it no longer holds ownership of the clipboard contents via an invocation ofClipboardOwner.lostOwnership()
on that owner. An implementation ofsetContents()
is free not to invokelostOwnership()
directly from this method. For example,lostOwnership()
may be invoked later on a different thread. The same applies toFlavorListener
s registered on this clipboard.The method throws
IllegalStateException
if the clipboard is currently unavailable. For example, on some platforms, the system clipboard is unavailable while it is accessed by another application.- Parameters:
-
contents
- the transferable object representing the clipboard content -
owner
- the object which owns the clipboard content - Throws:
-
IllegalStateException
- if the clipboard is currently unavailable - See Also:
-
Toolkit.getSystemClipboard()
getContents
public Transferable getContents(Object requestor)
Returns a transferable object representing the current contents of the clipboard. If the clipboard currently has no contents, it returnsnull
. The parameter Object requestor is not currently used. The method throwsIllegalStateException
if the clipboard is currently unavailable. For example, on some platforms, the system clipboard is unavailable while it is accessed by another application.- Parameters:
-
requestor
- the object requesting the clip data (not used) - Returns:
- the current transferable object on the clipboard
- Throws:
-
IllegalStateException
- if the clipboard is currently unavailable - See Also:
-
Toolkit.getSystemClipboard()
getAvailableDataFlavors
public DataFlavor[] getAvailableDataFlavors()
Returns an array ofDataFlavor
s in which the current contents of this clipboard can be provided. If there are noDataFlavor
s available, this method returns a zero-length array.- Returns:
-
an array of
DataFlavor
s in which the current contents of this clipboard can be provided - Throws:
-
IllegalStateException
- if this clipboard is currently unavailable - Since:
- 1.5
isDataFlavorAvailable
public boolean isDataFlavorAvailable(DataFlavor flavor)
Returns whether or not the current contents of this clipboard can be provided in the specifiedDataFlavor
.- Parameters:
-
flavor
- the requestedDataFlavor
for the contents - Returns:
-
true
if the current contents of this clipboard can be provided in the specifiedDataFlavor
;false
otherwise - Throws:
-
NullPointerException
- ifflavor
isnull
-
IllegalStateException
- if this clipboard is currently unavailable - Since:
- 1.5
getData
public Object getData(DataFlavor flavor) throws UnsupportedFlavorException, IOException
Returns an object representing the current contents of this clipboard in the specifiedDataFlavor
. The class of the object returned is defined by the representation class offlavor
.- Parameters:
-
flavor
- the requestedDataFlavor
for the contents - Returns:
-
an object representing the current contents of this clipboard in the specified
DataFlavor
- Throws:
-
NullPointerException
- ifflavor
isnull
-
IllegalStateException
- if this clipboard is currently unavailable -
UnsupportedFlavorException
- if the requestedDataFlavor
is not available -
IOException
- if the data in the requestedDataFlavor
can not be retrieved - Since:
- 1.5
- See Also:
-
DataFlavor.getRepresentationClass()
addFlavorListener
public void addFlavorListener(FlavorListener listener)
Registers the specifiedFlavorListener
to receiveFlavorEvent
s from this clipboard. Iflistener
isnull
, no exception is thrown and no action is performed.- Parameters:
-
listener
- the listener to be added - Since:
- 1.5
- See Also:
-
removeFlavorListener(java.awt.datatransfer.FlavorListener)
,getFlavorListeners()
,FlavorListener
,FlavorEvent
removeFlavorListener
public void removeFlavorListener(FlavorListener listener)
Removes the specifiedFlavorListener
so that it no longer receivesFlavorEvent
s from thisClipboard
. This method performs no function, nor does it throw an exception, if the listener specified by the argument was not previously added to thisClipboard
. Iflistener
isnull
, no exception is thrown and no action is performed.- Parameters:
-
listener
- the listener to be removed - Since:
- 1.5
- See Also:
-
addFlavorListener(java.awt.datatransfer.FlavorListener)
,getFlavorListeners()
,FlavorListener
,FlavorEvent
getFlavorListeners
public FlavorListener[] getFlavorListeners()
Returns an array of all theFlavorListener
s currently registered on thisClipboard
.- Returns:
-
all of this clipboard's
FlavorListener
s or an empty array if no listeners are currently registered - Since:
- 1.5
- See Also:
-
addFlavorListener(java.awt.datatransfer.FlavorListener)
,removeFlavorListener(java.awt.datatransfer.FlavorListener)
,FlavorListener
,FlavorEvent
-
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.