void SearchLineEdit::clearSearch() { // Don't check for empty text as the user may have deleted the text, then hit // the clear button. In this case, there are still other objects that may // want to recieve the `searchCleared` signal. clear(); emit searchCleared(); }
void WSearchLineEdit::focusOutEvent(QFocusEvent* event) { QLineEdit::focusOutEvent(event); if (text().isEmpty()) { m_place = true; showPlaceholder(); emit(searchCleared()); } else { m_place = false; } }
DlgDeveloperTools::DlgDeveloperTools(QWidget* pParent, UserSettingsPointer pConfig) : QDialog(pParent) { Q_UNUSED(pConfig); setupUi(this); QList<QSharedPointer<ControlDoublePrivate> > controlsList; ControlDoublePrivate::getControls(&controlsList); QHash<ConfigKey, ConfigKey> controlAliases = ControlDoublePrivate::getControlAliases(); for (QList<QSharedPointer<ControlDoublePrivate> >::const_iterator it = controlsList.begin(); it != controlsList.end(); ++it) { const QSharedPointer<ControlDoublePrivate>& pControl = *it; if (pControl) { m_controlModel.addControl(pControl->getKey(), pControl->name(), pControl->description()); ConfigKey aliasKey = controlAliases[pControl->getKey()]; if (!aliasKey.isNull()) { m_controlModel.addControl(aliasKey, pControl->name(), "Alias for " + pControl->getKey().group + pControl->getKey().item); } } } m_controlProxyModel.setSourceModel(&m_controlModel); m_controlProxyModel.setFilterCaseSensitivity(Qt::CaseInsensitive); m_controlProxyModel.setFilterKeyColumn(ControlModel::CONTROL_COLUMN_FILTER); controlsTable->setModel(&m_controlProxyModel); controlsTable->hideColumn(ControlModel::CONTROL_COLUMN_TITLE); controlsTable->hideColumn(ControlModel::CONTROL_COLUMN_DESCRIPTION); controlsTable->hideColumn(ControlModel::CONTROL_COLUMN_FILTER); StatsManager* pManager = StatsManager::instance(); if (pManager) { connect(pManager, SIGNAL(statUpdated(const Stat&)), &m_statModel, SLOT(statUpdated(const Stat&))); pManager->emitAllStats(); } m_statProxyModel.setSourceModel(&m_statModel); statsTable->setModel(&m_statProxyModel); QString logFileName = QDir(CmdlineArgs::Instance().getSettingsPath()).filePath("mixxx.log"); m_logFile.setFileName(logFileName); if (!m_logFile.open(QIODevice::ReadOnly | QIODevice::Text)) { qWarning() << "ERROR: Could not open log file:" << logFileName; } // Connect search box signals to the library connect(controlSearch, SIGNAL(search(const QString&)), this, SLOT(slotControlSearch(const QString&))); connect(controlSearch, SIGNAL(searchCleared()), this, SLOT(slotControlSearchClear())); connect(controlDump, SIGNAL(clicked()), this, SLOT(slotControlDump())); // Set up the log search box connect(logSearch, SIGNAL(returnPressed()), this, SLOT(slotLogSearch())); connect(logSearchButton, SIGNAL(clicked()), this, SLOT(slotLogSearch())); m_logCursor = logTextView->textCursor(); // Update at 2FPS. startTimer(500); // Delete this dialog when its closed. We don't want any persistence. setAttribute(Qt::WA_DeleteOnClose); }
void SearchBar::textEdited(const QString &text) { if (text.isEmpty()) { emit searchCleared(); } }
PDFViewer::PDFViewer(const QString & pdf_doc, QWidget *parent, Qt::WindowFlags flags) : QMainWindow(parent, flags) { QtPDF::PDFDocumentWidget *docWidget = new QtPDF::PDFDocumentWidget(this); connect(this, SIGNAL(switchInterfaceLocale(QLocale)), docWidget, SLOT(switchInterfaceLocale(QLocale))); #ifdef USE_MUPDF docWidget->setDefaultBackend(QString::fromLatin1("mupdf")); #elif USE_POPPLERQT docWidget->setDefaultBackend(QString::fromLatin1("poppler-qt")); #else #error At least one backend is required #endif if (!pdf_doc.isEmpty() && docWidget) docWidget->load(pdf_doc); docWidget->goFirst(); _counter = new PageCounter(this->statusBar()); _zoomWdgt = new ZoomTracker(this); _search = new SearchLineEdit(this); _toolBar = new QToolBar(this); _toolBar->addAction(QIcon(QString::fromUtf8(":/QtPDF/icons/document-open.png")), tr("Open..."), this, SLOT(open())); _toolBar->addSeparator(); _toolBar->addAction(QIcon(QString::fromUtf8(":/QtPDF/icons/zoomin.png")), tr("Zoom In"), docWidget, SLOT(zoomIn())); _toolBar->addAction(QIcon(QString::fromUtf8(":/QtPDF/icons/zoomout.png")), tr("Zoom Out"), docWidget, SLOT(zoomOut())); _toolBar->addAction(QIcon(QString::fromUtf8(":/QtPDF/icons/zoom-fitwidth.png")), tr("Fit to Width"), docWidget, SLOT(zoomFitWidth())); _toolBar->addAction(QIcon(QString::fromUtf8(":/QtPDF/icons/zoom-fitwindow.png")), tr("Fit to Window"), docWidget, SLOT(zoomFitWindow())); _toolBar->addSeparator(); _toolBar->addAction(QIcon(QString::fromUtf8(":/QtPDF/icons/pagemode-single.png")), tr("Single Page Mode"), docWidget, SLOT(setSinglePageMode())); _toolBar->addAction(QIcon(QString::fromUtf8(":/QtPDF/icons/pagemode-continuous.png")), tr("One Column Continuous Page Mode"), docWidget, SLOT(setOneColContPageMode())); _toolBar->addAction(QIcon(QString::fromUtf8(":/QtPDF/icons/pagemode-twocols.png")), tr("Two Columns Continuous Page Mode"), docWidget, SLOT(setTwoColContPageMode())); _toolBar->addAction(QIcon(QString::fromUtf8(":/QtPDF/icons/pagemode-present.png")), tr("Presentation Mode"), docWidget, SLOT(setPresentationMode())); // TODO: fullscreen mode for presentations _toolBar->addSeparator(); _toolBar->addAction(QIcon(QString::fromUtf8(":/QtPDF/icons/zoom.png")), tr("Magnify"), docWidget, SLOT(setMouseModeMagnifyingGlass())); _toolBar->addAction(QIcon(QString::fromUtf8(":/QtPDF/icons/hand.png")), tr("Pan"), docWidget, SLOT(setMouseModeMove())); _toolBar->addAction(QIcon(QString::fromUtf8(":/QtPDF/icons/zoom-select.png")), tr("Marquee Zoom"), docWidget, SLOT(setMouseModeMarqueeZoom())); _toolBar->addAction(QIcon(QString::fromUtf8(":/QtPDF/icons/measure.png")), tr("Measure"), docWidget, SLOT(setMouseModeMeasure())); _toolBar->addAction(QIcon(QString::fromUtf8(":/QtPDF/icons/select-text.png")), tr("Select"), docWidget, SLOT(setMouseModeSelect())); _counter->setLastPage(docWidget->lastPage()); connect(docWidget, SIGNAL(changedPage(int)), _counter, SLOT(setCurrentPage(int))); connect(docWidget, SIGNAL(changedZoom(qreal)), _zoomWdgt, SLOT(setZoom(qreal))); connect(docWidget, SIGNAL(requestOpenUrl(const QUrl)), this, SLOT(openUrl(const QUrl))); connect(docWidget, SIGNAL(requestOpenPdf(QString, QtPDF::PDFDestination, bool)), this, SLOT(openPdf(QString, QtPDF::PDFDestination, bool))); connect(docWidget, SIGNAL(contextClick(const int, const QPointF)), this, SLOT(syncFromPdf(const int, const QPointF))); connect(docWidget, SIGNAL(searchProgressChanged(int, int)), this, SLOT(searchProgressChanged(int, int))); connect(docWidget, SIGNAL(changedDocument(const QWeakPointer<QtPDF::Backend::Document>)), this, SLOT(documentChanged(const QWeakPointer<QtPDF::Backend::Document>))); _toolBar->addSeparator(); #ifdef DEBUG // FIXME: Remove this _toolBar->addAction(QString::fromUtf8("en"), this, SLOT(setEnglishLocale())); _toolBar->addAction(QString::fromUtf8("de"), this, SLOT(setGermanLocale())); _toolBar->addSeparator(); #endif _toolBar->addWidget(_search); connect(_search, SIGNAL(searchRequested(QString)), docWidget, SLOT(search(QString))); connect(_search, SIGNAL(gotoNextResult()), docWidget, SLOT(nextSearchResult())); connect(_search, SIGNAL(gotoPreviousResult()), docWidget, SLOT(previousSearchResult())); connect(_search, SIGNAL(searchCleared()), docWidget, SLOT(clearSearchResults())); statusBar()->addPermanentWidget(_counter); statusBar()->addWidget(_zoomWdgt); addToolBar(_toolBar); setCentralWidget(docWidget); QDockWidget * toc = docWidget->dockWidget(QtPDF::PDFDocumentView::Dock_TableOfContents, this); addDockWidget(Qt::LeftDockWidgetArea, toc); tabifyDockWidget(toc, docWidget->dockWidget(QtPDF::PDFDocumentView::Dock_MetaData, this)); tabifyDockWidget(toc, docWidget->dockWidget(QtPDF::PDFDocumentView::Dock_Fonts, this)); tabifyDockWidget(toc, docWidget->dockWidget(QtPDF::PDFDocumentView::Dock_Permissions, this)); tabifyDockWidget(toc, docWidget->dockWidget(QtPDF::PDFDocumentView::Dock_Annotations, this)); toc->raise(); QShortcut * goPrevViewRect = new QShortcut(QKeySequence(tr("Alt+Left")), this); connect(goPrevViewRect, SIGNAL(activated()), docWidget, SLOT(goPrevViewRect())); }
void WSearchLineEdit::slotTextChanged(const QString& text) { if (text.isEmpty()) { triggerSearch(); emit(searchCleared()); } }
void WSearchLineEdit::onSearchTextCleared() { QLineEdit::clear(); emit(searchCleared()); }