mirror of
https://github.com/xiaoyifang/goldendict-ng.git
synced 2024-11-30 17:24:08 +00:00
Show now indexing for full-text search dictionary name in status line (issue #640)
This commit is contained in:
parent
cf3ec5dfc1
commit
cbef0a1a1f
|
@ -58,14 +58,13 @@ void Indexing::run()
|
||||||
{
|
{
|
||||||
gdWarning( "Exception occured while full-text search: %s", ex.what() );
|
gdWarning( "Exception occured while full-text search: %s", ex.what() );
|
||||||
}
|
}
|
||||||
emit sendNowIndexingName( tr( "None" ) );
|
emit sendNowIndexingName( QString() );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
FtsIndexing::FtsIndexing( std::vector< sptr< Dictionary::Class > > const & dicts):
|
FtsIndexing::FtsIndexing( std::vector< sptr< Dictionary::Class > > const & dicts):
|
||||||
dictionaries( dicts ),
|
dictionaries( dicts ),
|
||||||
started( false ),
|
started( false )
|
||||||
nowIndexing( tr( "None" ) )
|
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -98,6 +97,8 @@ void FtsIndexing::stopIndexing()
|
||||||
|
|
||||||
indexingExited.acquire();
|
indexingExited.acquire();
|
||||||
started = false;
|
started = false;
|
||||||
|
|
||||||
|
setNowIndexedName( QString() );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -263,7 +264,8 @@ void FullTextSearchDialog::saveData()
|
||||||
|
|
||||||
void FullTextSearchDialog::setNewIndexingName( QString name )
|
void FullTextSearchDialog::setNewIndexingName( QString name )
|
||||||
{
|
{
|
||||||
ui.nowIndexingLabel->setText( tr( "Now indexing: " ) + name );
|
ui.nowIndexingLabel->setText( tr( "Now indexing: " )
|
||||||
|
+ ( name.isEmpty() ? tr( "None" ) : name ) );
|
||||||
showDictNumbers();
|
showDictNumbers();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -48,7 +48,8 @@ bool MainStatusBar::hasImage() const
|
||||||
|
|
||||||
void MainStatusBar::clearMessage()
|
void MainStatusBar::clearMessage()
|
||||||
{
|
{
|
||||||
textWidget->setText( QString() );
|
message.clear();
|
||||||
|
textWidget->setText( backgroungMessage );
|
||||||
picWidget->setPixmap( QPixmap() );
|
picWidget->setPixmap( QPixmap() );
|
||||||
timer->stop();
|
timer->stop();
|
||||||
refresh();
|
refresh();
|
||||||
|
@ -56,12 +57,22 @@ void MainStatusBar::clearMessage()
|
||||||
|
|
||||||
QString MainStatusBar::currentMessage() const
|
QString MainStatusBar::currentMessage() const
|
||||||
{
|
{
|
||||||
return textWidget->text();
|
return message;
|
||||||
|
}
|
||||||
|
|
||||||
|
void MainStatusBar::setBackgroundMessage(const QString & bkg_message )
|
||||||
|
{
|
||||||
|
backgroungMessage = bkg_message;
|
||||||
|
if( message.isEmpty() )
|
||||||
|
{
|
||||||
|
textWidget->setText( backgroungMessage );
|
||||||
|
refresh();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainStatusBar::showMessage(const QString & str, int timeout, const QPixmap & pixmap)
|
void MainStatusBar::showMessage(const QString & str, int timeout, const QPixmap & pixmap)
|
||||||
{
|
{
|
||||||
textWidget->setText( str );
|
textWidget->setText( message = str );
|
||||||
picWidget->setPixmap( pixmap );
|
picWidget->setPixmap( pixmap );
|
||||||
|
|
||||||
// reload stylesheet
|
// reload stylesheet
|
||||||
|
@ -77,7 +88,7 @@ void MainStatusBar::showMessage(const QString & str, int timeout, const QPixmap
|
||||||
|
|
||||||
void MainStatusBar::refresh()
|
void MainStatusBar::refresh()
|
||||||
{
|
{
|
||||||
if ( !currentMessage().isEmpty() )
|
if ( !textWidget->text().isEmpty() )
|
||||||
{
|
{
|
||||||
adjustSize();
|
adjustSize();
|
||||||
|
|
||||||
|
|
|
@ -23,6 +23,7 @@ signals:
|
||||||
public slots:
|
public slots:
|
||||||
void showMessage(const QString & text, int timeout = 0, const QPixmap & pixmap = QPixmap());
|
void showMessage(const QString & text, int timeout = 0, const QPixmap & pixmap = QPixmap());
|
||||||
void clearMessage();
|
void clearMessage();
|
||||||
|
void setBackgroundMessage( QString const & message );
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual void mousePressEvent(QMouseEvent * event);
|
virtual void mousePressEvent(QMouseEvent * event);
|
||||||
|
@ -35,6 +36,9 @@ private:
|
||||||
QLabel * textWidget;
|
QLabel * textWidget;
|
||||||
|
|
||||||
QTimer * timer;
|
QTimer * timer;
|
||||||
|
QString backgroungMessage;
|
||||||
|
QString message;
|
||||||
|
|
||||||
bool eventFilter(QObject *obj, QEvent * event);
|
bool eventFilter(QObject *obj, QEvent * event);
|
||||||
void refresh();
|
void refresh();
|
||||||
bool hasImage() const;
|
bool hasImage() const;
|
||||||
|
|
|
@ -143,7 +143,7 @@ MainWindow::MainWindow( Config::Class & cfg_ ):
|
||||||
Gestures::registerRecognizers();
|
Gestures::registerRecognizers();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// use our own, cutsom statusbar
|
// use our own, custom statusbar
|
||||||
setStatusBar(0);
|
setStatusBar(0);
|
||||||
mainStatusBar = new MainStatusBar( this );
|
mainStatusBar = new MainStatusBar( this );
|
||||||
|
|
||||||
|
@ -674,6 +674,8 @@ MainWindow::MainWindow( Config::Class & cfg_ ):
|
||||||
|
|
||||||
ui.historyList->installEventFilter( this );
|
ui.historyList->installEventFilter( this );
|
||||||
|
|
||||||
|
connect( &ftsIndexing, SIGNAL( newIndexingName( QString ) ), this, SLOT( showFTSIndexingName( QString ) ) );
|
||||||
|
|
||||||
#ifdef Q_OS_WIN
|
#ifdef Q_OS_WIN
|
||||||
if( cfg.normalMainWindowGeometry.width() <= 0 )
|
if( cfg.normalMainWindowGeometry.width() <= 0 )
|
||||||
{
|
{
|
||||||
|
@ -1696,7 +1698,10 @@ void MainWindow::pageLoaded( ArticleView * view )
|
||||||
|
|
||||||
void MainWindow::showStatusBarMessage( QString const & message, int timeout, QPixmap const & icon )
|
void MainWindow::showStatusBarMessage( QString const & message, int timeout, QPixmap const & icon )
|
||||||
{
|
{
|
||||||
mainStatusBar->showMessage( message, timeout, icon );
|
if( message.isEmpty() )
|
||||||
|
mainStatusBar->clearMessage();
|
||||||
|
else
|
||||||
|
mainStatusBar->showMessage( message, timeout, icon );
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::tabSwitched( int )
|
void MainWindow::tabSwitched( int )
|
||||||
|
@ -4170,6 +4175,14 @@ void MainWindow::closeGDHelp()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MainWindow::showFTSIndexingName( QString const & name )
|
||||||
|
{
|
||||||
|
if( name.isEmpty() )
|
||||||
|
mainStatusBar->setBackgroundMessage( QString() );
|
||||||
|
else
|
||||||
|
mainStatusBar->setBackgroundMessage( tr( "Now indexing for full-text search: " ) + name );
|
||||||
|
}
|
||||||
|
|
||||||
#ifdef Q_OS_WIN32
|
#ifdef Q_OS_WIN32
|
||||||
|
|
||||||
bool MainWindow::handleGDMessage( MSG * message, long * result )
|
bool MainWindow::handleGDMessage( MSG * message, long * result )
|
||||||
|
|
|
@ -269,6 +269,8 @@ private slots:
|
||||||
|
|
||||||
void editDictionary ( Dictionary::Class * dict );
|
void editDictionary ( Dictionary::Class * dict );
|
||||||
|
|
||||||
|
void showFTSIndexingName( QString const & name );
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
|
|
||||||
// Executed in response to a user click on an 'add tab' tool button
|
// Executed in response to a user click on an 'add tab' tool button
|
||||||
|
|
Loading…
Reference in a new issue