QClipboard(3qt)QClipboard(3qt)NAMEQClipboard - Access to the window system clipboard
SYNOPSIS
#include <qclipboard.h>
Inherits QObject.
Public Members
enum Mode { Clipboard, Selection }
void clear ( Mode mode )
void clear ()
bool supportsSelection () const
bool ownsSelection () const
bool ownsClipboard () const
void setSelectionMode ( bool enable ) (obsolete)
bool selectionModeEnabled () const (obsolete)
QString text ( Mode mode ) const
QString text ( QCString & subtype, Mode mode ) const
void setText ( const QString & text, Mode mode )
QMimeSource * data ( Mode mode ) const
void setData ( QMimeSource * src, Mode mode )
QImage image ( Mode mode ) const
QPixmap pixmap ( Mode mode ) const
void setImage ( const QImage & image, Mode mode )
void setPixmap ( const QPixmap & pixmap, Mode mode )
QString text () const
QString text ( QCString & subtype ) const
void setText ( const QString & text )
QMimeSource * data () const
void setData ( QMimeSource * src )
QImage image () const
QPixmap pixmap () const
void setImage ( const QImage & image )
void setPixmap ( const QPixmap & pixmap )
Signals
void selectionChanged ()
void dataChanged ()
DESCRIPTION
The QClipboard class provides access to the window system clipboard.
The clipboard offers a simple mechanism to copy and paste data between
applications.
QClipboard supports the same data types that QDragObject does, and uses
similar mechanisms. For advanced clipboard usage read the drag-and-drop
documentation.
There is a single QClipboard object in an application, and you can
access it using QApplication::clipboard().
Example:
QClipboard *cb = QApplication::clipboard();
// Copy text from the clipboard (paste)
QString text = cb->text(QClipboard::Clipboard);
if ( !text.isNull() )
qDebug( "The clipboard contains: " + text );
// Copy text into the clipboard
cb->setText( "This text can be pasted by other programs",
QClipboard::Clipboard );
QClipboard features some convenience functions to access common data
types: setText() allows the exchange of Unicode text and setPixmap()
and setImage() allows the exchange of QPixmaps and QImages between
applications. The setData() function is the ultimate in flexibility: it
allows you to add any QMimeSource into the clipboard. There are
corresponding getters for each of these, e.g. text(), image() and
pixmap().
You can clear the clipboard by calling clear().
Platform Specific Information
<h4> X11 </h4>
The X11 Window System has the concept of a separate selection and
clipboard. When text is selected, it is immediately available as the
global mouse selection. The global mouse selection may later be copied
to the clipboard. By convention, the middle mouse button is used to
paste the global mouse selection.
X11 also has the concept of ownership; if you change the selection
within a window, X11 will only notify the owner and the previous owner
of the change, i.e. it will not notify all applications that the
selection or clipboard data changed.
Lastly, the X11 clipboard is event driven, i.e. the clipboard will not
function properly if the event loop is not running. Similarly, it is
recommended that the contents of the clipboard are stored or retrieved
in direct response to user-input events, e.g. mouse button or key
presses and releases. You should not store or retrieve the clipboard
contents in response to timer or non-user-input events.
<h4> Windows </h4>
Microsoft Windows does not support the global mouse selection; it only
supports the global clipboard, e.g. Windows only adds text to the
clipboard when an explicit copy or cut is made.
Windows does not have the concept of ownership; the clipboard is a
fully global resource so all applications are notified of changes.
See the multiclip example in the Qt Designer examples directory for an
example of a multiplatform clipboard application that also demonstrates
selection handling.
See also Environment Classes and Input/Output and Networking.
Member Type Documentation
QClipboard::Mode
This enum type is used to control which part of the system clipboard is
used by QClipboard::data(), QClipboard::setData() and related
functions.
QClipboard::Clipboard - indicates that data should be stored and
retrieved from the global clipboard.
QClipboard::Selection - indicates that data should be stored and
retrieved from the global mouse selection.
Note: Support for Selection is provided only on systems with a global
mouse selection (e.g. X11).
See also QClipboard::supportsSelection().
MEMBER FUNCTION DOCUMENTATIONvoid QClipboard::clear ( Mode mode )
Clear the clipboard contents.
The mode argument is used to control which part of the system clipboard
is used. If mode is QClipboard::Clipboard, this function clears the the
global clipboard contents. If mode is QClipboard::Selection, this
function clears the global mouse selection contents.
See also QClipboard::Mode and supportsSelection().
void QClipboard::clear ()
This is an overloaded member function, provided for convenience. It
behaves essentially like the above function.
This function uses the QClipboard::clear() function which takes a
QClipboard::Mode argument. The value of the mode argument is determined
by the return value of selectionModeEnabled(). If
selectionModeEnabled() returns TRUE, the mode argument is
QClipboard::Selection, otherwise the mode argument is
QClipboard::Clipboard.
QMimeSource * QClipboard::data ( Mode mode ) const
Returns a reference to a QMimeSource representation of the current
clipboard data.
The mode argument is used to control which part of the system clipboard
is used. If mode is QClipboard::Clipboard, the data is retrieved from
the global clipboard. If mode is QClipboard::Selection, the data is
retrieved from the global mouse selection.
See also setData().
QMimeSource * QClipboard::data () const
This is an overloaded member function, provided for convenience. It
behaves essentially like the above function.
This function uses the QClipboard::data() function which takes a
QClipboard::Mode argument. The value of the mode argument is determined
by the return value of selectionModeEnabled(). If
selectionModeEnabled() returns TRUE, the mode argument is
QClipboard::Selection, otherwise the mode argument is
QClipboard::Clipboard.
void QClipboard::dataChanged () [signal]
This signal is emitted when the clipboard data is changed.
QImage QClipboard::image ( Mode mode ) const
Returns the clipboard image, or returns a null image if the clipboard
does not contain an image or if it contains an image in an unsupported
image format.
The mode argument is used to control which part of the system clipboard
is used. If mode is QClipboard::Clipboard, the image is retrieved from
the global clipboard. If mode is QClipboard::Selection, the image is
retrieved from the global mouse selection.
See also setImage(), pixmap(), data(), and QImage::isNull().
QImage QClipboard::image () const
This is an overloaded member function, provided for convenience. It
behaves essentially like the above function.
This function uses the QClipboard::image() function which takes a
QClipboard::Mode argument. The value of the mode argument is determined
by the return value of selectionModeEnabled(). If
selectionModeEnabled() returns TRUE, the mode argument is
QClipboard::Selection, otherwise the mode argument is
QClipboard::Clipboard.
bool QClipboard::ownsClipboard () const
Returns TRUE if this clipboard object owns the clipboard data;
otherwise returns FALSE.
bool QClipboard::ownsSelection () const
Returns TRUE if this clipboard object owns the mouse selection data;
otherwise returns FALSE.
QPixmap QClipboard::pixmap ( Mode mode ) const
Returns the clipboard pixmap, or null if the clipboard does not contain
a pixmap. Note that this can lose information. For example, if the
image is 24-bit and the display is 8-bit, the result is converted to 8
bits, and if the image has an alpha channel, the result just has a
mask.
The mode argument is used to control which part of the system clipboard
is used. If mode is QClipboard::Clipboard, the pixmap is retrieved from
the global clipboard. If mode is QClipboard::Selection, the pixmap is
retrieved from the global mouse selection.
See also setPixmap(), image(), data(), and QPixmap::convertFromImage().
QPixmap QClipboard::pixmap () const
This is an overloaded member function, provided for convenience. It
behaves essentially like the above function.
This function uses the QClipboard::pixmap() function which takes a
QClipboard::Mode argument. The value of the mode argument is determined
by the return value of selectionModeEnabled(). If
selectionModeEnabled() returns TRUE, the mode argument is
QClipboard::Selection, otherwise the mode argument is
QClipboard::Clipboard.
void QClipboard::selectionChanged () [signal]
This signal is emitted when the selection is changed. This only applies
to windowing systems that support selections, e.g. X11. Windows doesn't
support selections.
bool QClipboard::selectionModeEnabled () const
This function is obsolete. It is provided to keep old source working.
We strongly advise against using it in new code.
Use the QClipboard::data(), QClipboard::setData() and related functions
which take a QClipboard::Mode argument.
Returns the selection mode.
See also setSelectionMode() and supportsSelection().
void QClipboard::setData ( QMimeSource * src, Mode mode )
Sets the clipboard data to src. Ownership of the data is transferred to
the clipboard. If you want to remove the data either call clear() or
call setData() again with new data.
The mode argument is used to control which part of the system clipboard
is used. If mode is QClipboard::Clipboard, the data is retrieved from
the global clipboard. If mode is QClipboard::Selection, the data is
retrieved from the global mouse selection.
The QDragObject subclasses are reasonable objects to put into the
clipboard (but do not try to call QDragObject::drag() on the same
object). Any QDragObject placed in the clipboard should have a parent
of 0. Do not put QDragMoveEvent or QDropEvent subclasses in the
clipboard, as they do not belong to the event handler which receives
them.
The setText(), setImage() and setPixmap() functions are simpler
wrappers for setting text, image and pixmap data respectively.
See also data().
void QClipboard::setData ( QMimeSource * src )
This is an overloaded member function, provided for convenience. It
behaves essentially like the above function.
This function uses the QClipboard::setData() function which takes a
QClipboard::Mode argument. The value of the mode argument is determined
by the return value of selectionModeEnabled(). If
selectionModeEnabled() returns TRUE, the mode argument is
QClipboard::Selection, otherwise the mode argument is
QClipboard::Clipboard.
void QClipboard::setImage ( const QImage & image, Mode mode )
Copies image into the clipboard.
The mode argument is used to control which part of the system clipboard
is used. If mode is QClipboard::Clipboard, the image is stored in the
global clipboard. If mode is QClipboard::Selection, the data is stored
in the global mouse selection.
This is shorthand for:
setData( new QImageDrag(image), mode )
See also image(), setPixmap(), and setData().
void QClipboard::setImage ( const QImage & image )
This is an overloaded member function, provided for convenience. It
behaves essentially like the above function.
This function uses the QClipboard::setImage() function which takes a
QClipboard::Mode argument. The value of the mode argument is determined
by the return value of selectionModeEnabled(). If
selectionModeEnabled() returns TRUE, the mode argument is
QClipboard::Selection, otherwise the mode argument is
QClipboard::Clipboard.
void QClipboard::setPixmap ( const QPixmap & pixmap, Mode mode )
Copies pixmap into the clipboard. Note that this is slower than
setImage() because it needs to convert the QPixmap to a QImage first.
The mode argument is used to control which part of the system clipboard
is used. If mode is QClipboard::Clipboard, the pixmap is stored in the
global clipboard. If mode is QClipboard::Selection, the pixmap is
stored in the global mouse selection.
See also pixmap(), setImage(), and setData().
void QClipboard::setPixmap ( const QPixmap & pixmap )
This is an overloaded member function, provided for convenience. It
behaves essentially like the above function.
This function uses the QClipboard::setPixmap() function which takes a
QClipboard::Mode argument. The value of the mode argument is determined
by the return value of selectionModeEnabled(). If
selectionModeEnabled() returns TRUE, the mode argument is
QClipboard::Selection, otherwise the mode argument is
QClipboard::Clipboard.
void QClipboard::setSelectionMode ( bool enable )
This function is obsolete. It is provided to keep old source working.
We strongly advise against using it in new code.
Use the QClipboard::data(), QClipboard::setData() and related functions
which take a QClipboard::Mode argument.
Sets the clipboard selection mode. If enable is TRUE, then subsequent
calls to QClipboard::setData() and other functions which put data into
the clipboard will put the data into the mouse selection, otherwise the
data will be put into the clipboard.
See also supportsSelection() and selectionModeEnabled().
void QClipboard::setText ( const QString & text, Mode mode )
Copies text into the clipboard as plain text.
The mode argument is used to control which part of the system clipboard
is used. If mode is QClipboard::Clipboard, the text is stored in the
global clipboard. If mode is QClipboard::Selection, the text is stored
in the global mouse selection.
See also text() and setData().
Example: regexptester/regexptester.cpp.
void QClipboard::setText ( const QString & text )
This is an overloaded member function, provided for convenience. It
behaves essentially like the above function.
This function uses the QClipboard::setText() function which takes a
QClipboard::Mode argument. The value of the mode argument is determined
by the return value of selectionModeEnabled(). If
selectionModeEnabled() returns TRUE, the mode argument is
QClipboard::Selection, otherwise the mode argument is
QClipboard::Clipboard.
bool QClipboard::supportsSelection () const
Returns TRUE if the clipboard supports mouse selection; otherwise
returns FALSE.
Example: regexptester/regexptester.cpp.
QString QClipboard::text ( Mode mode ) const
Returns the clipboard text as plain text, or a null string if the
clipboard does not contain any text.
The mode argument is used to control which part of the system clipboard
is used. If mode is QClipboard::Clipboard, the text is retrieved from
the global clipboard. If mode is QClipboard::Selection, the text is
retrieved from the global mouse selection.
See also setText(), data(), and QString::operator!().
QString QClipboard::text ( QCString & subtype, Mode mode ) const
This is an overloaded member function, provided for convenience. It
behaves essentially like the above function.
Returns the clipboard text in subtype subtype, or a null string if the
clipboard does not contain any text. If subtype is null, any subtype is
acceptable, and subtype is set to the chosen subtype.
The mode argument is used to control which part of the system clipboard
is used. If mode is QClipboard::Clipboard, the text is retrieved from
the global clipboard. If mode is QClipboard::Selection, the text is
retrieved from the global mouse selection.
Common values for subtype are "plain" and "html".
See also setText(), data(), and QString::operator!().
QString QClipboard::text () const
This is an overloaded member function, provided for convenience. It
behaves essentially like the above function.
This function uses the QClipboard::text() function which takes a
QClipboard::Mode argument. The value of the mode argument is determined
by the return value of selectionModeEnabled(). If
selectionModeEnabled() returns TRUE, the mode argument is
QClipboard::Selection, otherwise the mode argument is
QClipboard::Clipboard.
QString QClipboard::text ( QCString & subtype ) const
This is an overloaded member function, provided for convenience. It
behaves essentially like the above function.
Returns the clipboard text in subtype subtype, or a null string if the
clipboard does not contain any text. This function uses the
QClipboard::text() function which takes a QClipboard::Mode argument.
The value of the mode argument is determined by the return value of
selectionModeEnabled(). If selectionModeEnabled() returns TRUE, the
mode argument is QClipboard::Selection, otherwise the mode argument is
QClipboard::Clipboard.
SEE ALSO
http://doc.trolltech.com/qclipboard.html
http://www.trolltech.com/faq/tech.html
COPYRIGHT
Copyright 1992-2007 Trolltech ASA, http://www.trolltech.com. See the
license file included in the distribution for a complete license
statement.
AUTHOR
Generated automatically from the source code.
BUGS
If you find a bug in Qt, please report it as described in
http://doc.trolltech.com/bughowto.html. Good bug reports help us to
help you. Thank you.
The definitive Qt documentation is provided in HTML format; it is
located at $QTDIR/doc/html and can be read using Qt Assistant or with a
web browser. This man page is provided as a convenience for those users
who prefer man pages, although this format is not officially supported
by Trolltech.
If you find errors in this manual page, please report them to qt-
bugs@trolltech.com. Please include the name of the manual page
(qclipboard.3qt) and the Qt version (3.3.8).
Trolltech AS 2 February 2007 QClipboard(3qt)