TQClipboard Class

Home | All Classes | Main Classes | Annotated | Grouped Classes | Functions |

# TQClipboard Class Reference

The TQClipboard class provides access to the window system clipboard. More...

`#include <ntqclipboard.h>`

Inherits TQObject.

List of all member functions.

## 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)
- TQString text ( Mode mode ) const
- TQString text ( TQCString & subtype, Mode mode ) const
- void setText ( const TQString & text, Mode mode )
- TQMimeSource * data ( Mode mode ) const
- void setData ( TQMimeSource * src, Mode mode )
- TQImage image ( Mode mode ) const
- TQPixmap pixmap ( Mode mode ) const
- void setImage ( const TQImage & image, Mode mode )
- void setPixmap ( const TQPixmap & pixmap, Mode mode )
- TQString text () const
- TQString text ( TQCString & subtype ) const
- void setText ( const TQString & text )
- TQMimeSource * data () const
- void setData ( TQMimeSource * src )
- TQImage image () const
- TQPixmap pixmap () const
- void setImage ( const TQImage & image )
- void setPixmap ( const TQPixmap & pixmap )

## Signals

- void selectionChanged ()
- void dataChanged ()

## Detailed Description

The TQClipboard class provides access to the window system clipboard.

The clipboard offers a simple mechanism to copy and paste data between applications.

TQClipboard supports the same data types that TQDragObject does, and uses similar mechanisms. For advanced clipboard usage read the drag-and-drop documentation.

There is a single TQClipboard object in an application, and you can access it using TQApplication::clipboard().

Example:

        TQClipboard *cb = TQApplication::clipboard();

        // Copy text from the clipboard (paste)
        TQString text = cb->text(TQClipboard::Clipboard);
        if ( !text.isNull() )
            tqDebug( "The clipboard contains: " + text );

        // Copy text into the clipboard
        cb->setText( "This text can be pasted by other programs",
                     TQClipboard::Clipboard );

TQClipboard features some convenience functions to access common data types: setText() allows the exchange of Unicode text and setPixmap() and setImage() allows the exchange of TQPixmaps and TQImages between applications. The setData() function is the ultimate in flexibility: it allows you to add any TQMimeSource 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

#### X11

- 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.

#### Windows

- 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 TQt 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

### TQClipboard::Mode

This enum type is used to control which part of the system clipboard is used by TQClipboard::data(), TQClipboard::setData() and related functions.

- `TQClipboard::Clipboard` - indicates that data should be stored and retrieved from the global clipboard.
- `TQClipboard::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 TQClipboard::supportsSelection().

## Member Function Documentation

### void TQClipboard::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 TQClipboard::Clipboard, this function clears the the global clipboard contents. If mode is TQClipboard::Selection, this function clears the global mouse selection contents.

See also TQClipboard::Mode and supportsSelection().

### void TQClipboard::clear ()

This is an overloaded member function, provided for convenience. It behaves essentially like the above function.

This function uses the TQClipboard::clear() function which takes a TQClipboard::Mode argument. The value of the mode argument is determined by the return value of selectionModeEnabled(). If selectionModeEnabled() returns true, the mode argument is TQClipboard::Selection, otherwise the mode argument is TQClipboard::Clipboard.

### TQMimeSource * TQClipboard::data ( Mode mode ) const

Returns a reference to a TQMimeSource representation of the current clipboard data.

The mode argument is used to control which part of the system clipboard is used. If mode is TQClipboard::Clipboard, the data is retrieved from the global clipboard. If mode is TQClipboard::Selection, the data is retrieved from the global mouse selection.

See also setData().

### TQMimeSource * TQClipboard::data () const

This is an overloaded member function, provided for convenience. It behaves essentially like the above function.

This function uses the TQClipboard::data() function which takes a TQClipboard::Mode argument. The value of the mode argument is determined by the return value of selectionModeEnabled(). If selectionModeEnabled() returns true, the mode argument is TQClipboard::Selection, otherwise the mode argument is TQClipboard::Clipboard.

### void TQClipboard::dataChanged ()`[signal]`

This signal is emitted when the clipboard data is changed.

### TQImage TQClipboard::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 TQClipboard::Clipboard, the image is retrieved from the global clipboard. If mode is TQClipboard::Selection, the image is retrieved from the global mouse selection.

See also setImage(), pixmap(), data(), and TQImage::isNull().

### TQImage TQClipboard::image () const

This is an overloaded member function, provided for convenience. It behaves essentially like the above function.

This function uses the TQClipboard::image() function which takes a TQClipboard::Mode argument. The value of the mode argument is determined by the return value of selectionModeEnabled(). If selectionModeEnabled() returns true, the mode argument is TQClipboard::Selection, otherwise the mode argument is TQClipboard::Clipboard.

### bool TQClipboard::ownsClipboard () const

Returns true if this clipboard object owns the clipboard data; otherwise returns false.

### bool TQClipboard::ownsSelection () const

Returns true if this clipboard object owns the mouse selection data; otherwise returns false.

### TQPixmap TQClipboard::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 TQClipboard::Clipboard, the pixmap is retrieved from the global clipboard. If mode is TQClipboard::Selection, the pixmap is retrieved from the global mouse selection.

See also setPixmap(), image(), data(), and TQPixmap::convertFromImage().

### TQPixmap TQClipboard::pixmap () const

This is an overloaded member function, provided for convenience. It behaves essentially like the above function.

This function uses the TQClipboard::pixmap() function which takes a TQClipboard::Mode argument. The value of the mode argument is determined by the return value of selectionModeEnabled(). If selectionModeEnabled() returns true, the mode argument is TQClipboard::Selection, otherwise the mode argument is TQClipboard::Clipboard.

### void TQClipboard::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 TQClipboard::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 TQClipboard::data(), TQClipboard::setData() and related functions which take a TQClipboard::Mode argument.

Returns the selection mode.

See also setSelectionMode() and supportsSelection().

### void TQClipboard::setData ( TQMimeSource * 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 TQClipboard::Clipboard, the data is retrieved from the global clipboard. If mode is TQClipboard::Selection, the data is retrieved from the global mouse selection.

The TQDragObject subclasses are reasonable objects to put into the clipboard (but do not try to call TQDragObject::drag() on the same object). Any TQDragObject placed in the clipboard should have a parent of 0. Do not put TQDragMoveEvent or TQDropEvent 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 TQClipboard::setData ( TQMimeSource * src )

This is an overloaded member function, provided for convenience. It behaves essentially like the above function.

This function uses the TQClipboard::setData() function which takes a TQClipboard::Mode argument. The value of the mode argument is determined by the return value of selectionModeEnabled(). If selectionModeEnabled() returns true, the mode argument is TQClipboard::Selection, otherwise the mode argument is TQClipboard::Clipboard.

### void TQClipboard::setImage ( const TQImage & 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 TQClipboard::Clipboard, the image is stored in the global clipboard. If mode is TQClipboard::Selection, the data is stored in the global mouse selection.

This is shorthand for:

            setData( new TQImageDrag(image), mode )

See also image(), setPixmap(), and setData().

### void TQClipboard::setImage ( const TQImage & image )

This is an overloaded member function, provided for convenience. It behaves essentially like the above function.

This function uses the TQClipboard::setImage() function which takes a TQClipboard::Mode argument. The value of the mode argument is determined by the return value of selectionModeEnabled(). If selectionModeEnabled() returns true, the mode argument is TQClipboard::Selection, otherwise the mode argument is TQClipboard::Clipboard.

### void TQClipboard::setPixmap ( const TQPixmap & pixmap, Mode mode )

Copies pixmap into the clipboard. Note that this is slower than setImage() because it needs to convert the TQPixmap to a TQImage first.

The mode argument is used to control which part of the system clipboard is used. If mode is TQClipboard::Clipboard, the pixmap is stored in the global clipboard. If mode is TQClipboard::Selection, the pixmap is stored in the global mouse selection.

See also pixmap(), setImage(), and setData().

### void TQClipboard::setPixmap ( const TQPixmap & pixmap )

This is an overloaded member function, provided for convenience. It behaves essentially like the above function.

This function uses the TQClipboard::setPixmap() function which takes a TQClipboard::Mode argument. The value of the mode argument is determined by the return value of selectionModeEnabled(). If selectionModeEnabled() returns true, the mode argument is TQClipboard::Selection, otherwise the mode argument is TQClipboard::Clipboard.

### void TQClipboard::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 TQClipboard::data(), TQClipboard::setData() and related functions which take a TQClipboard::Mode argument.

Sets the clipboard selection mode. If enable is true, then subsequent calls to TQClipboard::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 TQClipboard::setText ( const TQString & 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 TQClipboard::Clipboard, the text is stored in the global clipboard. If mode is TQClipboard::Selection, the text is stored in the global mouse selection.

See also text() and setData().

Example: regexptester/regexptester.cpp.

### void TQClipboard::setText ( const TQString & text )

This is an overloaded member function, provided for convenience. It behaves essentially like the above function.

This function uses the TQClipboard::setText() function which takes a TQClipboard::Mode argument. The value of the mode argument is determined by the return value of selectionModeEnabled(). If selectionModeEnabled() returns true, the mode argument is TQClipboard::Selection, otherwise the mode argument is TQClipboard::Clipboard.

### bool TQClipboard::supportsSelection () const

Returns true if the clipboard supports mouse selection; otherwise returns false.

Example: regexptester/regexptester.cpp.

### TQString TQClipboard::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 TQClipboard::Clipboard, the text is retrieved from the global clipboard. If mode is TQClipboard::Selection, the text is retrieved from the global mouse selection.

See also setText(), data(), and TQString::operator!().

### TQString TQClipboard::text ( TQCString & 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 TQClipboard::Clipboard, the text is retrieved from the global clipboard. If mode is TQClipboard::Selection, the text is retrieved from the global mouse selection.

Common values for subtype are "plain" and "html".

See also setText(), data(), and TQString::operator!().

### TQString TQClipboard::text () const

This is an overloaded member function, provided for convenience. It behaves essentially like the above function.

This function uses the TQClipboard::text() function which takes a TQClipboard::Mode argument. The value of the mode argument is determined by the return value of selectionModeEnabled(). If selectionModeEnabled() returns true, the mode argument is TQClipboard::Selection, otherwise the mode argument is TQClipboard::Clipboard.

### TQString TQClipboard::text ( TQCString & 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 TQClipboard::text() function which takes a TQClipboard::Mode argument. The value of the mode argument is determined by the return value of selectionModeEnabled(). If selectionModeEnabled() returns true, the mode argument is TQClipboard::Selection, otherwise the mode argument is TQClipboard::Clipboard.

This file is part of the TQt toolkit. Copyright © 1995-2007 Trolltech. All Rights Reserved.