QPixmap ImageWidget::windowPixmap(ApplicationWindow *mw, const QString& name, const QSize& size) { if (!mw || name.isEmpty()) return QPixmap(); MdiSubWindow *w = mw->window(name); MultiLayer *ml = qobject_cast<MultiLayer *> (w); if (ml) return ml->canvasPixmap(size); Graph3D *g = qobject_cast<Graph3D *> (w); if (g) return g->surface()->renderPixmap(size.width(), size.height()); Table *t = qobject_cast<Table *> (w); if (t) return QPixmap::grabWidget(t->table()); return QPixmap(); }