Fix integration with Qt Creator
+ CMake build flag `QTK_UPDATE_SUBMODULES` to include Assimp as a git submodule
This commit is contained in:
@@ -11,7 +11,7 @@
|
||||
#include <meshrenderer.h>
|
||||
#include <model.h>
|
||||
#include <resourcemanager.h>
|
||||
#include <scene.h>
|
||||
#include <examplescene.h>
|
||||
#include <texture.h>
|
||||
|
||||
using namespace Qtk;
|
||||
@@ -17,7 +17,6 @@
|
||||
|
||||
|
||||
class ExampleScene : public Qtk::Scene {
|
||||
|
||||
public:
|
||||
ExampleScene();
|
||||
~ExampleScene();
|
||||
@@ -9,7 +9,7 @@
|
||||
#include <QApplication>
|
||||
#include <QLabel>
|
||||
|
||||
#include <mainwidget.h>
|
||||
#include <qtkwidget.h>
|
||||
#include <mainwindow.h>
|
||||
|
||||
|
||||
|
||||
@@ -1,13 +1,24 @@
|
||||
#include <mainwindow.h>
|
||||
#include <ui_mainwindow.h>
|
||||
#include <qtkwidget.h>
|
||||
#include "ui_mainwindow.h"
|
||||
|
||||
MainWindow::MainWindow(QWidget *parent) :
|
||||
QMainWindow(parent),
|
||||
ui(new Ui::MainWindow)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
mScene = new ExampleScene();
|
||||
ui->openGLWidget->setScene(mScene);
|
||||
// For use in design mode using Qt Creator
|
||||
// + We can use the `ui` member to access nested widgets by name
|
||||
for (const auto widget : ui->qWidget->children()) {
|
||||
auto qtkWidget = dynamic_cast<Qtk::QtkWidget*>(widget);
|
||||
if (qtkWidget != nullptr) {
|
||||
std::string key = qtkWidget->objectName().toStdString();
|
||||
if (mScenes[key] == nullptr) {
|
||||
mScenes[qtkWidget->objectName().toStdString()] = new ExampleScene();
|
||||
}
|
||||
qtkWidget->setScene(mScenes[qtkWidget->objectName().toStdString()]);
|
||||
}
|
||||
}
|
||||
setWindowIcon(QIcon("../resources/icon.png"));
|
||||
}
|
||||
|
||||
|
||||
@@ -1,10 +1,12 @@
|
||||
#ifndef MAINWINDOW_H
|
||||
#define MAINWINDOW_H
|
||||
|
||||
#include <unordered_map>
|
||||
|
||||
#include <QMainWindow>
|
||||
|
||||
#include <qtk-widget_export.h>
|
||||
#include <scene.h>
|
||||
#include "qtk-widget_export.h"
|
||||
#include <examplescene.h>
|
||||
|
||||
|
||||
namespace Ui {
|
||||
@@ -21,7 +23,7 @@ public:
|
||||
|
||||
private:
|
||||
Ui::MainWindow *ui;
|
||||
Qtk::Scene * mScene;
|
||||
std::unordered_map<std::string, Qtk::Scene*> mScenes;
|
||||
};
|
||||
|
||||
#endif // MAINWINDOW_H
|
||||
|
||||
@@ -14,15 +14,25 @@
|
||||
<string>Qtk - MainWindow</string>
|
||||
</property>
|
||||
<widget class="QWidget" name="centralwidget">
|
||||
<widget class="Qtk::MainWidget" name="openGLWidget" native="true">
|
||||
<widget class="QWidget" name="qWidget" native="true">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>10</y>
|
||||
<width>775</width>
|
||||
<height>550</height>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>801</width>
|
||||
<height>561</height>
|
||||
</rect>
|
||||
</property>
|
||||
<widget class="Qtk::QtkWidget" name="openGLWidget">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>10</x>
|
||||
<y>10</y>
|
||||
<width>781</width>
|
||||
<height>541</height>
|
||||
</rect>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
</widget>
|
||||
<widget class="QMenuBar" name="menubar">
|
||||
@@ -94,9 +104,9 @@
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>Qtk::MainWidget</class>
|
||||
<extends>QWidget</extends>
|
||||
<header>mainwidget.h</header>
|
||||
<class>Qtk::QtkWidget</class>
|
||||
<extends>QOpenGLWidget</extends>
|
||||
<header>qtkwidget.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
|
||||
Reference in New Issue
Block a user