// Make the new view visible and handle connections
iCurrentView = view;
connect( iCurrentView, SIGNAL( eventDetected() ), this, SLOT( viewEventDetected() ) );
- connect( this, SIGNAL( viewResized(const QSize &) ), iCurrentView, SLOT( viewResized( const QSize & ) ) );
+ connect( this, SIGNAL( viewResized(const QSize &, const QSize &) ), iCurrentView, SLOT( viewResized( const QSize &, const QSize & ) ) );
view->resize( this->size() );
view->show();
if ( oldView != 0 )
{
disconnect( oldView, SIGNAL( eventDetected() ), this, SLOT( viewEventDetected() ) );
- disconnect( this, SIGNAL( viewResized(const QSize &) ), oldView, SLOT( viewResized(const QSize &) ) );
+ disconnect( this, SIGNAL( viewResized(const QSize &, const QSize &) ), oldView, SLOT( viewResized(const QSize &, const QSize &) ) );
oldView->hide();
}
}
-void WindowManager::showDialog(QDialog *dialog)
+void WindowManager::showDialog(QDialog *aDialog, bool blocking, bool aSendSignal)
{
// Handle dialog displaying
- emit dialogActivated();
- dialog->exec();
- emit dialogDeactivated();
+ if ( aSendSignal ) emit dialogActivated();
+ if ( blocking )
+ {
+ aDialog->exec();
+ }
+ else
+ {
+ aDialog->show();
+ }
+ if ( aSendSignal ) emit dialogDeactivated();
}
void WindowManager::viewEventDetected()
{
if ( iCurrentView != 0 )
{
+ QSize currentSize = iCurrentView->size();
iCurrentView->setFixedSize( this->size() );
- emit viewResized( this->size() );
+ emit viewResized( this->size(), currentSize );
}
}
void WindowManager::error( const QString &aErrorMessage )
{
- qDebug() << "WindowManager::showErrorPopup";
+ qDebug() << "WindowManager::error ";
- showDialog( static_cast<QDialog *>( PopUpMessageBox::error( 0, aErrorMessage ) ) );
+ PopUpMessageBox *popup = PopUpMessageBox::error( 0, aErrorMessage );
+ if ( popup != 0 )
+ {
+ showDialog( static_cast<QDialog *>( popup ), false );
+ }
}
void WindowManager::setFullscreen()