Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //main.cpp
- #include <QtGui/QApplication>
- #include <QtDeclarative>
- #include "qmlapplicationviewer.h"
- #include "latecontroller.h"
- int main(int argc, char *argv[])
- {
- QApplication app(argc, argv);
- qmlRegisterType<LateController>( "LateController", 1, 0, "LateController" );
- QmlApplicationViewer viewer;
- viewer.setOrientation(QmlApplicationViewer::ScreenOrientationAuto);
- viewer.setMainQmlFile(QLatin1String("qml/Late/main.qml"));
- viewer.showExpanded();
- return app.exec();
- }
- //latecontroller.h (truncated)
- #include <QObject>
- #include "mainmodel.h"
- class LateController : public QObject
- {
- Q_OBJECT
- public:
- explicit LateController(QObject *parent = 0);
- signals:
- void mainPage();
- public slots:
- QAbstractItemModel *getMainModel();
- private:
- void init();
- };
- //latecontroller.cpp (truncated)
- #include "latecontroller.h"
- #include <QDebug>
- LateController::LateController(QObject *parent) : QObject(parent) {
- init();
- }
- void LateController::init() {
- /* performs delayed action loading things */
- emit mainPage(); // indicates QML should switch to "MainPage"
- }
- QAbstractItemModel *LateController::getMainModel() {
- MainModel *mainModel = new MainModel();
- /* inserts data into mainModel */
- return mainModel;
- }
- //main.qml
- import QtQuick 1.1
- import com.nokia.meego 1.0
- import LateController 1.0
- PageStackWindow {
- id: appWindow
- initialPage: loadPage
- LateController {
- id: late
- onMainPage: {
- pageStack.clear();
- pageStack.push( mainPage );
- }
- }
- LoadPage {
- id: loadPage //is a page that shows a busy indicator as the app loads
- }
- MainPage {
- id: mainPage
- }
- }
- //MainPage.qml
- import QtQuick 1.1
- import com.nokia.meego 1.0
- import LateController 1.0
- LatePage {
- content: Rectangle {
- anchors.fill: parent
- color: "black"
- LateController {
- id: loadLate
- onMainPage: {
- list.model = loadLate.getMainModel()
- console.log( "mainList.model == " + curModel ) // returns "undefined"
- }
- ListView {
- id: mainList
- anchors.fill: parent
- ...
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement