Enable first version of ZOOM ALL function.

This commit is contained in:
Luis Lucas
2015-01-18 01:07:55 +00:00
parent 083f38e8bf
commit 92775fac48
5 changed files with 26 additions and 12 deletions
+2 -2
View File
@@ -71,13 +71,13 @@ public:
/*
* Scale the image (zoomed in or out) to speficied absolute zoom value (1.0 = original size).
*/
virtual Void zoomToFactor( Double ) = 0;
virtual Void zoomToFactor( Double factor , QPoint center = QPoint() ) = 0;
/**
* Scale the image by a given factor
* @param factor factor of scale. Ex: 1.2 scale the image up by 20% and
* 0.8 scale the image down by 25%
*/
virtual Void scaleView( Double ) = 0;
virtual Void scaleView( Double , QPoint center = QPoint() ) = 0;
virtual Double getScaleFactor() = 0;
+6 -6
View File
@@ -351,21 +351,21 @@ Void VideoSubWindow::zoomToFit()
scaleView( getScrollSize() );
}
Void VideoSubWindow::zoomToFactor(Double factor)
Void VideoSubWindow::zoomToFactor( Double factor , QPoint center )
{
Double curFactor;
curFactor = getScaleFactor() ;
if( factor != curFactor )
m_cViewArea->scaleZoomFactor( factor/curFactor, QPoint() );
m_cViewArea->scaleZoomFactor( factor/curFactor, center );
}
Void VideoSubWindow::scaleView( Double scale )
Void VideoSubWindow::scaleView( Double scale , QPoint center )
{
Q_ASSERT( m_cViewArea->image() );
m_cViewArea->scaleZoomFactor( scale, QPoint() );
m_cViewArea->scaleZoomFactor( scale, center );
}
Void VideoSubWindow::scaleView( const QSize & size )
Void VideoSubWindow::scaleView( const QSize & size, QPoint center )
{
QSize imgViewSize;
if( m_pcCurrFrame )
@@ -390,7 +390,7 @@ Void VideoSubWindow::scaleView( const QSize & size )
Double curFactor = getScaleFactor() ;
if( factor != curFactor )
m_cViewArea->scaleZoomFactor( factor/curFactor, QPoint() );
m_cViewArea->scaleZoomFactor( factor/curFactor, center );
}
+3 -3
View File
@@ -88,7 +88,7 @@ private:
* Private zoom function to handle
* zoom to fit
*/
Void scaleView( const QSize & size );
Void scaleView( const QSize & size , QPoint center = QPoint() );
public:
VideoSubWindow( QWidget * parent = 0, Bool isModule = false );
@@ -164,8 +164,8 @@ public:
*/
Void normalSize();
Void zoomToFit();
Void scaleView( Double scale );
Void zoomToFactor( Double factor );
Void scaleView( Double scale , QPoint center = QPoint() );
Void zoomToFactor( Double factor , QPoint center = QPoint() );
Double getScaleFactor()
{
+14 -1
View File
@@ -416,6 +416,16 @@ Void plaYUVerApp::zoomToFitAll()
updateZoomFactorSBox();
}
Void plaYUVerApp::zoomToFactorAll( double factor )
{
SubWindowHandle *subWindow;
for( Int i = 0; i < mdiArea->subWindowList().size(); i++ )
{
subWindow = qobject_cast<SubWindowHandle *>( mdiArea->subWindowList().at( i ) );
subWindow->zoomToFactor(factor);
}
}
Void plaYUVerApp::scaleFrame( int ratio )
{
if( m_pcCurrentSubWindow )
@@ -427,10 +437,13 @@ Void plaYUVerApp::scaleFrame( int ratio )
Void plaYUVerApp::zoomFromSBox( double zoom )
{
Double factor = zoom/100;
if( activeSubWindow() )
{
activeSubWindow()->zoomToFactor( zoom/100 );
activeSubWindow()->zoomToFactor( factor );
}
zoomToFactorAll( factor );
}
Void plaYUVerApp::updateZoomFactorSBox()
+1
View File
@@ -89,6 +89,7 @@ private Q_SLOTS:
void normalSize();
void zoomToFit();
void zoomToFitAll();
void zoomToFactorAll( double factor );
void setTool( int idxTool );