void StatusBarView::dataChanged( const QModelIndex &topLeft, const QModelIndex &bottomRight ) { if ( m_selected == -1 ) { return; } m_globalInfo = "["; m_x = Models::getGlobal( Fn::Property::G_SAGITTAL ).toFloat(); m_globalInfo += QString::number( m_x, 'f', 2 ); m_globalInfo += ","; m_y = Models::getGlobal( Fn::Property::G_CORONAL ).toFloat(); m_globalInfo += QString::number( m_y, 'f', 2 ); m_globalInfo += ","; m_z = Models::getGlobal( Fn::Property::G_AXIAL ).toFloat(); m_globalInfo += QString::number( m_z, 'f', 2 ); m_globalInfo += "]"; Dataset* ds = VPtr<Dataset>::asPtr( model()->data( model()->index( m_selected, (int)Fn::Property::D_DATASET_POINTER ), Qt::DisplayRole ) ); if ( ds ) { m_datasetInfo = ds->getValueAsString( m_x, m_y, m_z ); } QString zoom = "[Zoom] " + QString::number( Models::zoom ); emit( sigStatusChanged( m_globalInfo + " " + m_datasetInfo + " " + zoom ) ); }
StatusBar::StatusBar( QWidget* parent ) : QStatusBar( parent ) { m_statusBarView = new StatusBarView(); m_statusBarView->setModel( Models::d() ); connect( m_statusBarView, SIGNAL( sigStatusChanged( QString ) ), this, SLOT( slotStatusChanged( QString ) ) ); }
void CScreenShotView::setShotStatus(CScreenShotStatus status) { if(m_shotStatus != status) { m_shotStatus = status; emit sigStatusChanged(m_shotStatus); } }
void StatusBarView::selectionChanged( const QItemSelection &selected, const QItemSelection &deselected ) { if ( selected.indexes().size() > 0 ) { m_selected = selected.indexes().first().row(); Dataset* ds = VPtr<Dataset>::asPtr( model()->data( model()->index( m_selected, (int)Fn::Property::D_DATASET_POINTER ), Qt::DisplayRole ) ); m_datasetInfo = ds->getValueAsString( m_x, m_y, m_z ); emit( sigStatusChanged( m_globalInfo + " " + m_datasetInfo ) ); } else { m_selected = -1; } }
void CScreenShotManager::startScreenShot() { if(m_isRunning) { return; } clearAll(); QList<QScreen *> screens = QApplication::screens(); int index = 0; QList<QRect> rectList = getWindownRectList(); C_SCREENSHOTSHARED_LOG(QString("all rect count %1").arg(rectList.count())); foreach (QScreen *d, screens) { index++; CScreenShotView *view = new CScreenShotView(rectList,d); m_viewList.append(view); connect(view,SIGNAL(sigStatusChanged(CScreenShotStatus)), this,SLOT(onStatusChanged(CScreenShotStatus))); connect(view,SIGNAL(sigPreviewItemShow()), this,SLOT(onPreviewItemShow())); view->startSCreenShot(); view->raise(); }