PreviewWindow::PreviewWindow(QWidget *proxyParent, MainWindow *parent, const QGLFormat &format) : QGLWidget(new CoreProfileContext(format), proxyParent), _parent(*parent), _scene(parent->scene()), _selection(parent->selection()), _mousePriorities(DefaultPriorities), _rebuildMeshes(false) { setMouseTracking(true); setFocusPolicy(Qt::ClickFocus); new QShortcut(QKeySequence("A"), this, SLOT(toggleSelectAll())); new QShortcut(QKeySequence("G"), this, SLOT(grabGizmo())); new QShortcut(QKeySequence("Ctrl+C"), this, SLOT(recomputeCentroids())); new QShortcut(QKeySequence("Ctrl+R"), this, SLOT(computeSmoothNormals())); new QShortcut(QKeySequence("Ctrl+Shift+R"), this, SLOT(computeHardNormals())); new QShortcut(QKeySequence("Ctrl+F"), this, SLOT(freezeTransforms())); new QShortcut(QKeySequence("Ctrl+D"), this, SLOT(duplicateSelection())); new QShortcut(QKeySequence("Ctrl+A"), this, SLOT(addModel())); new QShortcut(QKeySequence("Delete"), this, SLOT(deleteSelection())); new QShortcut(QKeySequence("Ctrl+Tab"), this, SLOT(togglePreview())); QShortcut *tShortcut = new QShortcut(QKeySequence("W"), this); QShortcut *rShortcut = new QShortcut(QKeySequence("E"), this); QShortcut *sShortcut = new QShortcut(QKeySequence("R"), this); QShortcut *xShortcut = new QShortcut(QKeySequence("X"), this); QShortcut *yShortcut = new QShortcut(QKeySequence("Y"), this); QShortcut *zShortcut = new QShortcut(QKeySequence("Z"), this); QShortcut *lShortcut = new QShortcut(QKeySequence("Q"), this); QSignalMapper *gizmoMapper = new QSignalMapper(); connect(tShortcut, SIGNAL(activated()), gizmoMapper, SLOT(map())); connect(rShortcut, SIGNAL(activated()), gizmoMapper, SLOT(map())); connect(sShortcut, SIGNAL(activated()), gizmoMapper, SLOT(map())); gizmoMapper->setMapping(tShortcut, 0); gizmoMapper->setMapping(rShortcut, 1); gizmoMapper->setMapping(sShortcut, 2); connect(gizmoMapper, SIGNAL(mapped(int)), &_gizmo, SLOT(setMode(int))); gizmoMapper = new QSignalMapper(); connect(xShortcut, SIGNAL(activated()), gizmoMapper, SLOT(map())); connect(yShortcut, SIGNAL(activated()), gizmoMapper, SLOT(map())); connect(zShortcut, SIGNAL(activated()), gizmoMapper, SLOT(map())); gizmoMapper->setMapping(xShortcut, 0); gizmoMapper->setMapping(yShortcut, 1); gizmoMapper->setMapping(zShortcut, 2); connect(gizmoMapper, SIGNAL(mapped(int)), &_gizmo, SLOT(fixAxis(int))); connect(lShortcut, SIGNAL(activated()), &_gizmo, SLOT(toggleTranslateLocal())); connect(&_gizmo, SIGNAL(redraw()), this, SLOT(updateGL())); connect(&_gizmo, SIGNAL(transformFinished(Mat4f)), this, SLOT(transformFinished(Mat4f))); }
void SSMLConvert::slotProcessExited() { m_xsltProc->deleteLater(); m_xsltProc = 0; m_state = tsFinished; emit transformFinished(); }