add screenshot function

This commit is contained in:
Anakin
2017-01-11 16:28:51 +01:00
parent 77ffe7baf4
commit 930c49e9c7
4 changed files with 17 additions and 1 deletions

View File

@@ -54,6 +54,10 @@ void MainWindow::setupWidgets()
connect(openFile, &QAction::triggered, this, &MainWindow::openFile);
ui->mainToolBar->addAction(openFile);
QAction *screenShot = new QAction(QIcon(":/images/toolbar/screenshot.png"), "Screenshot", this);
connect(screenShot, &QAction::triggered, this, &MainWindow::takeScreenShot);
ui->mainToolBar->addAction(screenShot);
ui->mainToolBar->addSeparator();
QSignalMapper* signalMapper = new QSignalMapper(this);
@@ -130,6 +134,15 @@ void MainWindow::aboutTool()
delete dialog;
}
void MainWindow::takeScreenShot()
{
QString destination = QFileDialog::getSaveFileName(this, "Save as...", "", "PNG (*.png);; BMP (*.bmp);;TIFF (*.tiff, *.tif);;JPEG (*.jpg *jpeg)");
OglViewerWidget* viewer = dynamic_cast<OglViewerWidget*>(centralWidget());
if (!destination.isEmpty() && viewer != NULL)
viewer->grab().save(destination);
}
void MainWindow::setFileInfo(QString name, QStringList textures, int vertices, int triangle)
{
m_fileInfo = QByteArray("Filename: ");