RGBMatrixEditor::RGBMatrixEditor(QWidget* parent, RGBMatrix* mtx, Doc* doc) : QWidget(parent) , m_doc(doc) , m_matrix(mtx) , m_speedDials(NULL) , m_scene(new QGraphicsScene(this)) , m_previewTimer(new QTimer(this)) , m_previewIterator(0) , m_previewStep(0) { Q_ASSERT(doc != NULL); Q_ASSERT(mtx != NULL); setupUi(this); // Set a nice gradient backdrop m_scene->setBackgroundBrush(Qt::darkGray); QLinearGradient gradient(200, 200, 200, 2000); gradient.setSpread(QGradient::ReflectSpread); m_scene->setBackgroundBrush(gradient); connect(m_previewTimer, SIGNAL(timeout()), this, SLOT(slotPreviewTimeout())); connect(m_doc, SIGNAL(modeChanged(Doc::Mode)), this, SLOT(slotModeChanged(Doc::Mode))); connect(m_doc, SIGNAL(fixtureGroupAdded(quint32)), this, SLOT(slotFixtureGroupAdded())); connect(m_doc, SIGNAL(fixtureGroupRemoved(quint32)), this, SLOT(slotFixtureGroupRemoved())); connect(m_doc, SIGNAL(fixtureGroupChanged(quint32)), this, SLOT(slotFixtureGroupChanged(quint32))); init(); slotModeChanged(m_doc->mode()); // Set focus to the editor m_nameEdit->setFocus(); }
RGBMatrixEditor::RGBMatrixEditor(QQuickView *view, Doc *doc, QObject *parent) : FunctionEditor(view, doc, parent) , m_matrix(NULL) , m_previewTimer(new QTimer(this)) { m_view->rootContext()->setContextProperty("rgbMatrixEditor", this); connect(m_previewTimer, SIGNAL(timeout()), this, SLOT(slotPreviewTimeout())); }