ClipWindow::ClipWindow(QWidget *parent) : QMainWindow(parent) { clipboard = QApplication::clipboard(); QWidget *centralWidget = new QWidget(this); QWidget *currentItem = new QWidget(centralWidget); QLabel *mimeTypeLabel = new QLabel(tr("MIME types:"), currentItem); mimeTypeCombo = new QComboBox(currentItem); QLabel *dataLabel = new QLabel(tr("Data:"), currentItem); dataInfoLabel = new QLabel("", currentItem); previousItems = new QListWidget(centralWidget); //! [0] connect(clipboard, SIGNAL(dataChanged()), this, SLOT(updateClipboard())); //! [0] connect(mimeTypeCombo, SIGNAL(activated(QString)), this, SLOT(updateData(QString))); QVBoxLayout *currentLayout = new QVBoxLayout(currentItem); currentLayout->addWidget(mimeTypeLabel); currentLayout->addWidget(mimeTypeCombo); currentLayout->addWidget(dataLabel); currentLayout->addWidget(dataInfoLabel); currentLayout->addStretch(1); QHBoxLayout *mainLayout = new QHBoxLayout(centralWidget); mainLayout->addWidget(currentItem, 1); mainLayout->addWidget(previousItems); setCentralWidget(centralWidget); setWindowTitle(tr("Clipboard")); }
void ClipboardMonitor::updateTimeout() { if (m_needCheckClipboard) { checkClipboard(QClipboard::Clipboard); #ifdef COPYQ_WS_X11 } else if (m_needCheckSelection) { checkClipboard(QClipboard::Selection); #endif } else if ( !m_newdata.isEmpty() ) { updateClipboard(); } }