Qt 4.8
Public Functions | Protected Functions | Private Functions | Properties | List of all members
QXlibClipboardMime Class Reference
Inheritance diagram for QXlibClipboardMime:
QXlibMime QInternalMimeData QMimeData QObject

Public Functions

 QXlibClipboardMime (QClipboard::Mode mode, QXlibClipboard *clipboard)
 
- Public Functions inherited from QXlibMime
 QXlibMime ()
 
 ~QXlibMime ()
 
- Public Functions inherited from QInternalMimeData
QStringList formats () const
 Returns a list of formats supported by the object. More...
 
bool hasFormat (const QString &mimeType) const
 Returns true if the object can return data for the MIME type specified by mimeType; otherwise returns false. More...
 
 QInternalMimeData ()
 
 ~QInternalMimeData ()
 
- Public Functions inherited from QMimeData
void clear ()
 Removes all the MIME type and data entries in the object. More...
 
QVariant colorData () const
 Returns a color if the data stored in the object represents a color (MIME type application/x-color); otherwise returns a null variant. More...
 
QByteArray data (const QString &mimetype) const
 Returns the data stored in the object in the format described by the MIME type specified by mimeType. More...
 
bool hasColor () const
 Returns true if the object can return a color (MIME type application/x-color); otherwise returns false. More...
 
bool hasHtml () const
 Returns true if the object can return HTML (MIME type text/html); otherwise returns false. More...
 
bool hasImage () const
 Returns true if the object can return an image; otherwise returns false. More...
 
bool hasText () const
 Returns true if the object can return plain text (MIME type text/plain); otherwise returns false. More...
 
bool hasUrls () const
 Returns true if the object can return a list of urls; otherwise returns false. More...
 
QString html () const
 Returns a string if the data stored in the object is HTML (MIME type text/html); otherwise returns an empty string. More...
 
QVariant imageData () const
 Returns a QVariant storing a QImage if the object can return an image; otherwise returns a null variant. More...
 
 QMimeData ()
 Constructs a new MIME data object with no data in it. More...
 
void removeFormat (const QString &mimetype)
 Removes the data entry for mimeType in the object. More...
 
void setColorData (const QVariant &color)
 Sets the color data in the object to the given color. More...
 
void setData (const QString &mimetype, const QByteArray &data)
 Sets the data associated with the MIME type given by mimeType to the specified data. More...
 
void setHtml (const QString &html)
 Sets html as the HTML (MIME type text/html) used to represent the data. More...
 
void setImageData (const QVariant &image)
 Sets the data in the object to the given image. More...
 
void setText (const QString &text)
 Sets text as the plain text (MIME type text/plain) used to represent the data. More...
 
void setUrls (const QList< QUrl > &urls)
 Sets the URLs stored in the MIME data object to those specified by urls. More...
 
QString text () const
 Returns a plain text (MIME type text/plain) representation of the data. More...
 
QList< QUrlurls () const
 Returns a list of URLs contained within the MIME data object. More...
 
 ~QMimeData ()
 Destroys the MIME data object. More...
 
- Public Functions inherited from QObject
bool blockSignals (bool b)
 If block is true, signals emitted by this object are blocked (i.e., emitting a signal will not invoke anything connected to it). More...
 
const QObjectListchildren () const
 Returns a list of child objects. More...
 
bool connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const
 
bool disconnect (const char *signal=0, const QObject *receiver=0, const char *member=0)
 
bool disconnect (const QObject *receiver, const char *member=0)
 
void dumpObjectInfo ()
 Dumps information about signal connections, etc. More...
 
void dumpObjectTree ()
 Dumps a tree of children to the debug output. More...
 
QList< QByteArraydynamicPropertyNames () const
 Returns the names of all properties that were dynamically added to the object using setProperty(). More...
 
virtual bool event (QEvent *)
 This virtual function receives events to an object and should return true if the event e was recognized and processed. More...
 
virtual bool eventFilter (QObject *, QEvent *)
 Filters events if this object has been installed as an event filter for the watched object. More...
 
template<typename T >
findChild (const QString &aName=QString()) const
 Returns the child of this object that can be cast into type T and that is called name, or 0 if there is no such object. More...
 
template<typename T >
QList< T > findChildren (const QString &aName=QString()) const
 Returns all children of this object with the given name that can be cast to type T, or an empty list if there are no such objects. More...
 
template<typename T >
QList< T > findChildren (const QRegExp &re) const
 
bool inherits (const char *classname) const
 Returns true if this object is an instance of a class that inherits className or a QObject subclass that inherits className; otherwise returns false. More...
 
void installEventFilter (QObject *)
 Installs an event filter filterObj on this object. More...
 
bool isWidgetType () const
 Returns true if the object is a widget; otherwise returns false. More...
 
void killTimer (int id)
 Kills the timer with timer identifier, id. More...
 
virtual const QMetaObjectmetaObject () const
 Returns a pointer to the meta-object of this object. More...
 
void moveToThread (QThread *thread)
 Changes the thread affinity for this object and its children. More...
 
QString objectName () const
 
QObjectparent () const
 Returns a pointer to the parent object. More...
 
QVariant property (const char *name) const
 Returns the value of the object's name property. More...
 
Q_INVOKABLE QObject (QObject *parent=0)
 Constructs an object with parent object parent. More...
 
void removeEventFilter (QObject *)
 Removes an event filter object obj from this object. More...
 
void setObjectName (const QString &name)
 
void setParent (QObject *)
 Makes the object a child of parent. More...
 
bool setProperty (const char *name, const QVariant &value)
 Sets the value of the object's name property to value. More...
 
void setUserData (uint id, QObjectUserData *data)
 
bool signalsBlocked () const
 Returns true if signals are blocked; otherwise returns false. More...
 
int startTimer (int interval)
 Starts a timer and returns a timer identifier, or returns zero if it could not start a timer. More...
 
QThreadthread () const
 Returns the thread in which the object lives. More...
 
QObjectUserDatauserData (uint id) const
 
virtual ~QObject ()
 Destroys the object, deleting all its child objects. More...
 

Protected Functions

QStringList formats_sys () const
 
bool hasFormat_sys (const QString &format) const
 
QVariant retrieveData_sys (const QString &fmt, QVariant::Type requestedType) const
 
- Protected Functions inherited from QInternalMimeData
QVariant retrieveData (const QString &mimeType, QVariant::Type type) const
 Returns a variant with the given type containing data for the MIME type specified by mimeType. More...
 
- Protected Functions inherited from QObject
virtual void childEvent (QChildEvent *)
 This event handler can be reimplemented in a subclass to receive child events. More...
 
virtual void connectNotify (const char *signal)
 This virtual function is called when something has been connected to signal in this object. More...
 
virtual void customEvent (QEvent *)
 This event handler can be reimplemented in a subclass to receive custom events. More...
 
virtual void disconnectNotify (const char *signal)
 This virtual function is called when something has been disconnected from signal in this object. More...
 
 QObject (QObjectPrivate &dd, QObject *parent=0)
 
int receivers (const char *signal) const
 Returns the number of receivers connected to the signal. More...
 
QObjectsender () const
 Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns 0. More...
 
int senderSignalIndex () const
 
virtual void timerEvent (QTimerEvent *)
 This event handler can be reimplemented in a subclass to receive timer events for the object. More...
 

Private Functions

bool empty () const
 

Properties

QByteArray format_atoms
 
QStringList formatList
 
QXlibClipboardm_clipboard
 
Atom modeAtom
 

Additional Inherited Members

- Public Slots inherited from QObject
void deleteLater ()
 Schedules this object for deletion. More...
 
- Signals inherited from QObject
void destroyed (QObject *=0)
 This signal is emitted immediately before the object obj is destroyed, and can not be blocked. More...
 
- Static Public Functions inherited from QXlibMime
static Atom mimeAtomForFormat (Display *display, const QString &format, QVariant::Type requestedType, const QList< Atom > &atoms, QByteArray *requestedEncoding)
 
static QList< Atom > mimeAtomsForFormat (Display *display, const QString &format)
 
static QString mimeAtomToString (Display *display, Atom a)
 
static QVariant mimeConvertToFormat (Display *display, Atom a, const QByteArray &data, const QString &format, QVariant::Type requestedType, const QByteArray &encoding)
 
static bool mimeDataForAtom (Display *display, Atom a, QMimeData *mimeData, QByteArray *data, Atom *atomFormat, int *dataFormat)
 
static QStringList mimeFormatsForAtom (Display *display, Atom a)
 
static Atom mimeStringToAtom (Display *display, const QString &mimeType)
 
- Static Public Functions inherited from QInternalMimeData
static bool canReadData (const QString &mimeType)
 
static QStringList formatsHelper (const QMimeData *data)
 
static bool hasFormatHelper (const QString &mimeType, const QMimeData *data)
 
static QByteArray renderDataHelper (const QString &mimeType, const QMimeData *data)
 
- Static Public Functions inherited from QObject
static bool connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
 Creates a connection of the given type from the signal in the sender object to the method in the receiver object. More...
 
static bool connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection)
 
static bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member)
 Disconnects signal in object sender from method in object receiver. More...
 
static bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member)
 
static uint registerUserData ()
 
static QString tr (const char *sourceText, const char *comment=0, int n=-1)
 
static QString trUtf8 (const char *sourceText, const char *comment=0, int n=-1)
 
- Static Public Variables inherited from QObject
static const QMetaObject staticMetaObject
 This variable stores the meta-object for the class. More...
 
- Protected Variables inherited from QObject
QScopedPointer< QObjectDatad_ptr
 
- Static Protected Variables inherited from QObject
static const QMetaObject staticQtMetaObject
 

Detailed Description

Definition at line 52 of file qxlibclipboard.cpp.

Constructors and Destructors

◆ QXlibClipboardMime()

QXlibClipboardMime::QXlibClipboardMime ( QClipboard::Mode  mode,
QXlibClipboard clipboard 
)
inline

Definition at line 56 of file qxlibclipboard.cpp.

57  : QXlibMime()
58  , m_clipboard(clipboard)
59  {
60  switch (mode) {
62  modeAtom = XA_PRIMARY;
63  break;
64 
67  break;
68 
69  default:
70  qWarning("QTestLiteMime: Internal error: Unsupported clipboard mode");
71  break;
72  }
73  }
QXlibClipboard * m_clipboard
Q_CORE_EXPORT void qWarning(const char *,...)
static Atom atom(X11Atom atom)

Functions

◆ empty()

bool QXlibClipboardMime::empty ( ) const
inlineprivate

Definition at line 136 of file qxlibclipboard.cpp.

Referenced by formats_sys(), and retrieveData_sys().

137  {
138  Window win = XGetSelectionOwner(m_clipboard->screen()->display()->nativeDisplay(), modeAtom);
139 
140  return win == XNone;
141  }
QXlibClipboard * m_clipboard
Display * nativeDisplay() const
QXlibScreen * screen() const
QXlibDisplay * display() const

◆ formats_sys()

QStringList QXlibClipboardMime::formats_sys ( ) const
inlineprotectedvirtual

Implements QInternalMimeData.

Definition at line 76 of file qxlibclipboard.cpp.

77  {
78  if (empty())
79  return QStringList();
80 
81  if (!formatList.count()) {
82  QXlibClipboardMime *that = const_cast<QXlibClipboardMime *>(this);
83  // get the list of targets from the current clipboard owner - we do this
84  // once so that multiple calls to this function don't require multiple
85  // server round trips...
87 
88  if (format_atoms.size() > 0) {
89  Atom *targets = (Atom *) format_atoms.data();
90  int size = format_atoms.size() / sizeof(Atom);
91 
92  for (int i = 0; i < size; ++i) {
93  if (targets[i] == 0)
94  continue;
95 
96  QStringList formatsForAtom = mimeFormatsForAtom(m_clipboard->screen()->display()->nativeDisplay(),targets[i]);
97  for (int j = 0; j < formatsForAtom.size(); ++j) {
98  if (!formatList.contains(formatsForAtom.at(j)))
99  that->formatList.append(formatsForAtom.at(j));
100  }
101  }
102  }
103  }
104 
105  return formatList;
106  }
QXlibClipboard * m_clipboard
char * data()
Returns a pointer to the data stored in the byte array.
Definition: qbytearray.h:429
Display * nativeDisplay() const
int count(const T &t) const
Returns the number of occurrences of value in the list.
Definition: qlist.h:891
QByteArray getDataInFormat(Atom modeAtom, Atom fmtatom)
void append(const T &t)
Inserts value at the end of the list.
Definition: qlist.h:507
const T & at(int i) const
Returns the item at index position i in the list.
Definition: qlist.h:468
The QStringList class provides a list of strings.
Definition: qstringlist.h:66
QBool contains(const QString &str, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
Returns true if the list contains the string str; otherwise returns false.
Definition: qstringlist.h:172
static QStringList mimeFormatsForAtom(Display *display, Atom a)
Definition: qxlibmime.cpp:82
QXlibScreen * screen() const
static Atom atom(X11Atom atom)
int size() const
Returns the number of items in the list.
Definition: qlist.h:137
int size() const
Returns the number of bytes in this byte array.
Definition: qbytearray.h:402
QXlibDisplay * display() const

◆ hasFormat_sys()

bool QXlibClipboardMime::hasFormat_sys ( const QString format) const
inlineprotectedvirtual

Implements QInternalMimeData.

Definition at line 108 of file qxlibclipboard.cpp.

109  {
110  QStringList list = formats();
111  return list.contains(format);
112  }
The QStringList class provides a list of strings.
Definition: qstringlist.h:66
QStringList formats() const
Returns a list of formats supported by the object.
Definition: qdnd.cpp:351
QBool contains(const QString &str, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
Returns true if the list contains the string str; otherwise returns false.
Definition: qstringlist.h:172

◆ retrieveData_sys()

QVariant QXlibClipboardMime::retrieveData_sys ( const QString fmt,
QVariant::Type  requestedType 
) const
inlineprotectedvirtual

Implements QInternalMimeData.

Definition at line 114 of file qxlibclipboard.cpp.

115  {
116  if (fmt.isEmpty() || empty())
117  return QByteArray();
118 
119  (void)formats(); // trigger update of format list
120 
121  QList<Atom> atoms;
122  Atom *targets = (Atom *) format_atoms.data();
123  int size = format_atoms.size() / sizeof(Atom);
124  for (int i = 0; i < size; ++i)
125  atoms.append(targets[i]);
126 
127  QByteArray encoding;
128  Atom fmtatom = mimeAtomForFormat(m_clipboard->screen()->display()->nativeDisplay(),fmt, requestedType, atoms, &encoding);
129 
130  if (fmtatom == 0)
131  return QVariant();
132 
133  return mimeConvertToFormat(m_clipboard->screen()->display()->nativeDisplay(),fmtatom, m_clipboard->getDataInFormat(modeAtom,fmtatom), fmt, requestedType, encoding);
134  }
The QVariant class acts like a union for the most common Qt data types.
Definition: qvariant.h:92
QXlibClipboard * m_clipboard
char * data()
Returns a pointer to the data stored in the byte array.
Definition: qbytearray.h:429
The QByteArray class provides an array of bytes.
Definition: qbytearray.h:135
Display * nativeDisplay() const
QByteArray getDataInFormat(Atom modeAtom, Atom fmtatom)
void append(const T &t)
Inserts value at the end of the list.
Definition: qlist.h:507
bool isEmpty() const
Returns true if the string has no characters; otherwise returns false.
Definition: qstring.h:704
QStringList formats() const
Returns a list of formats supported by the object.
Definition: qdnd.cpp:351
QXlibScreen * screen() const
static QVariant mimeConvertToFormat(Display *display, Atom a, const QByteArray &data, const QString &format, QVariant::Type requestedType, const QByteArray &encoding)
Definition: qxlibmime.cpp:195
int size() const
Returns the number of bytes in this byte array.
Definition: qbytearray.h:402
static Atom mimeAtomForFormat(Display *display, const QString &format, QVariant::Type requestedType, const QList< Atom > &atoms, QByteArray *requestedEncoding)
Definition: qxlibmime.cpp:269
QXlibDisplay * display() const
The QList class is a template class that provides lists.
Definition: qdatastream.h:62

Properties

◆ format_atoms

QByteArray QXlibClipboardMime::format_atoms
private

Definition at line 147 of file qxlibclipboard.cpp.

Referenced by formats_sys().

◆ formatList

QStringList QXlibClipboardMime::formatList
private

Definition at line 146 of file qxlibclipboard.cpp.

Referenced by formats_sys().

◆ m_clipboard

QXlibClipboard* QXlibClipboardMime::m_clipboard
private

Definition at line 145 of file qxlibclipboard.cpp.

Referenced by empty(), and formats_sys().

◆ modeAtom

Atom QXlibClipboardMime::modeAtom
private

Definition at line 144 of file qxlibclipboard.cpp.

Referenced by empty(), formats_sys(), and QXlibClipboardMime().


The documentation for this class was generated from the following file: