summaryrefslogtreecommitdiffstats
path: root/util/qt3d/modeltweak/QuickLoad.h
blob: 3ad0ee7077d85b033d846d5cd84532b522aeee64 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#ifndef QUICKLOAD_H
#define QUICKLOAD_H

#include <QObject>
#include <QFile>
#include <QUrl>
#include <QFileDialog>
#include <QDebug>

class QuickLoad : public QObject
{
    Q_OBJECT

    QString _filename;

    Q_PROPERTY(QString filename READ filename WRITE setFilename NOTIFY filenameChanged)

public:
    QuickLoad(QObject *parent=0) : QObject(parent) {}

    Q_INVOKABLE QString openModelFile()
    {
        QString qmlFilename = QFileDialog::getOpenFileName(0, tr("Open Model File"), "",tr("Model Files (*.*)"));

        setFilename(qmlFilename);

        return qmlFilename;
    }

    QString filename() const { return _filename; }
    void setFilename(const QString filename) { if (_filename != filename) _filename = filename; emit filenameChanged(filename); }

signals:
    void filenameChanged(const QString newFilename);

};

#endif // QUICKLOAD_H