Kaynağa Gözat

Merge pull request #374 from lassoan/373-grabVTKWidget-hangs

373 - Added check to only grab visible child widgets
Steve Pieper 11 yıl önce
ebeveyn
işleme
e469437231

+ 4 - 0
Libs/Visualization/VTK/Widgets/ctkVTKWidgetsUtils.cpp

@@ -47,6 +47,10 @@ QImage ctk::grabVTKWidget(QWidget* widget, QRect rectangle)
   painter.begin(&widgetImage);
   foreach(QVTKWidget* vtkWidget, widget->findChildren<QVTKWidget*>())
     {
+    if (!vtkWidget->isVisible())
+    {
+      continue;
+    }
     QRect subWidgetRect = QRect(vtkWidget->mapTo(widget, QPoint(0,0)), vtkWidget->size());
     if (!rectangle.intersects(subWidgetRect))
       {

+ 4 - 0
Libs/Widgets/ctkWidgetsUtils.cpp

@@ -56,6 +56,10 @@ QImage ctk::grabWidget(QWidget* widget, QRect rectangle)
   painter.begin(&widgetImage);
   foreach(QGLWidget* glWidget, widget->findChildren<QGLWidget*>())
     {
+    if (!glWidget->isVisible())
+    {
+      continue;
+    }
     QRect subWidgetRect = QRect(glWidget->mapTo(widget, QPoint(0,0)), glWidget->size());
     if (!rectangle.intersects(subWidgetRect))
       {