mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-04-21 10:13:43 +03:00
0032975: Visualization, TKOpenGl - do not blit inactive Subview
This commit is contained in:
parent
b9280b8b27
commit
dcbd679c8b
@ -2225,6 +2225,11 @@ bool OpenGl_View::blitSubviews (const Graphic3d_Camera::Projection ,
|
|||||||
for (const Handle(Graphic3d_CView)& aChildIter : mySubviews)
|
for (const Handle(Graphic3d_CView)& aChildIter : mySubviews)
|
||||||
{
|
{
|
||||||
OpenGl_View* aSubView = dynamic_cast<OpenGl_View*> (aChildIter.get());
|
OpenGl_View* aSubView = dynamic_cast<OpenGl_View*> (aChildIter.get());
|
||||||
|
if (!aSubView->IsActive())
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
const Handle(OpenGl_FrameBuffer)& aChildFbo = !aSubView->myImmediateSceneFbos[0].IsNull()
|
const Handle(OpenGl_FrameBuffer)& aChildFbo = !aSubView->myImmediateSceneFbos[0].IsNull()
|
||||||
? aSubView->myImmediateSceneFbos[0]
|
? aSubView->myImmediateSceneFbos[0]
|
||||||
: aSubView->myMainSceneFbos[0];
|
: aSubView->myMainSceneFbos[0];
|
||||||
|
@ -348,7 +348,8 @@ Handle(V3d_View) V3d_View::PickSubview (const Graphic3d_Vec2i& thePnt) const
|
|||||||
for (Standard_Integer aSubviewIter = mySubviews.Upper(); aSubviewIter >= mySubviews.Lower(); --aSubviewIter)
|
for (Standard_Integer aSubviewIter = mySubviews.Upper(); aSubviewIter >= mySubviews.Lower(); --aSubviewIter)
|
||||||
{
|
{
|
||||||
const Handle(V3d_View)& aSubview = mySubviews.Value (aSubviewIter);
|
const Handle(V3d_View)& aSubview = mySubviews.Value (aSubviewIter);
|
||||||
if (thePnt.x() >= aSubview->View()->SubviewTopLeft().x()
|
if (aSubview->View()->IsActive()
|
||||||
|
&& thePnt.x() >= aSubview->View()->SubviewTopLeft().x()
|
||||||
&& thePnt.x() < (aSubview->View()->SubviewTopLeft().x() + aSubview->Window()->Dimensions().x())
|
&& thePnt.x() < (aSubview->View()->SubviewTopLeft().x() + aSubview->Window()->Dimensions().x())
|
||||||
&& thePnt.y() >= aSubview->View()->SubviewTopLeft().y()
|
&& thePnt.y() >= aSubview->View()->SubviewTopLeft().y()
|
||||||
&& thePnt.y() < (aSubview->View()->SubviewTopLeft().y() + aSubview->Window()->Dimensions().y()))
|
&& thePnt.y() < (aSubview->View()->SubviewTopLeft().y() + aSubview->Window()->Dimensions().y()))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user