/*
* Copyright 2015 Canonical Ltd.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation; version 3.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program. If not, see .
*/
#include "mockcontroller.h"
#include "qinputdeviceinfo_mock_p.h"
#include
#include
#include
#include
MockController::MockController(QQmlEngine *engine)
{
QQmlComponent component(engine);
component.setData("import QtQuick 2.4; import Unity.InputInfo 0.1; InputWindow { }", ::qmlDirectory());
QObject *myObject = component.create();
QQuickItem *item = qobject_cast(myObject);
if (item) {
auto window = new QQuickView();
window->setTitle("Input");
item->setParentItem(window->contentItem());
window->setResizeMode(QQuickView::SizeRootObjectToView);
window->setWidth(200);
window->setHeight(100);
window->show();
}
}
MockController *MockController::instance(QQmlEngine *engine)
{
static MockController* controller = new MockController(engine);
return controller;
}
QInputDevice *MockController::addMockDevice(const QString &devicePath, QInputDevice::InputType type)
{
return QInputDeviceManagerPrivate::instance()->addMockDevice(devicePath, type);
}
void MockController::removeDevice(const QString &devicePath)
{
QInputDeviceManagerPrivate::instance()->removeDevice(devicePath);
}