#4890 Window tiling

This commit is contained in:
Magne Sjaastad
2022-10-31 13:26:26 +01:00
committed by GitHub
parent 9b61ebcac2
commit bbd0c5c67e
18 changed files with 549 additions and 367 deletions

View File

@@ -19,8 +19,10 @@
#include "RiuMdiSubWindow.h"
#include "RiaGuiApplication.h"
#include "RiaPlotDefines.h"
#include "Rim3dView.h"
#include "RimProject.h"
#include "RimSummaryPlot.h"
#include "RimWellLogPlot.h"
@@ -30,8 +32,6 @@
#include <QWindowStateChangeEvent>
#include <QDebug>
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
@@ -128,17 +128,7 @@ void RiuMdiSubWindow::resizeEvent( QResizeEvent* resizeEvent )
m_normalWindowGeometry = frameGeometry();
}
if ( !m_blockTilingChanges )
{
if ( window() == RiaGuiApplication::instance()->mainWindow() )
{
RiaGuiApplication::instance()->mainWindow()->storeSubWindowTiling( false );
}
else if ( window() == RiaGuiApplication::instance()->mainPlotWindow() )
{
RiaGuiApplication::instance()->mainPlotWindow()->storeSubWindowTiling( false );
}
}
checkAndResetTilingState();
QMdiSubWindow::resizeEvent( resizeEvent );
}
@@ -153,17 +143,26 @@ void RiuMdiSubWindow::moveEvent( QMoveEvent* moveEvent )
m_normalWindowGeometry = frameGeometry();
}
if ( !m_blockTilingChanges )
{
if ( window() == RiaGuiApplication::instance()->mainWindow() )
{
RiaGuiApplication::instance()->mainWindow()->storeSubWindowTiling( false );
}
else if ( window() == RiaGuiApplication::instance()->mainPlotWindow() )
{
RiaGuiApplication::instance()->mainPlotWindow()->storeSubWindowTiling( false );
}
}
checkAndResetTilingState();
QMdiSubWindow::moveEvent( moveEvent );
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RiuMdiSubWindow::checkAndResetTilingState()
{
if ( m_blockTilingChanges ) return;
if ( window() == RiaGuiApplication::instance()->mainWindow() &&
!RiaGuiApplication::instance()->mainWindow()->isBlockingSubWindowActivatedSignal() )
{
RimProject::current()->setSubWindowsTileMode3DWindow( RiaDefines::WindowTileMode::UNDEFINED );
}
else if ( window() == RiaGuiApplication::instance()->mainPlotWindow() &&
!RiaGuiApplication::instance()->mainPlotWindow()->isBlockingSubWindowActivatedSignal() )
{
RimProject::current()->setSubWindowsTileModePlotWindow( RiaDefines::WindowTileMode::UNDEFINED );
}
}