Webui: extend led hardware config + connection lost page (#226)

* split content and js
tune leds config

* implement connection lost page

* split js/html in huebridge

* add js action for connection lost

* extend led config
make connection loss nicer

* tune led code
add menu entry for grabber

* more tuning of webui

* switch back to botstrap textarea
add v4l to components

* add icon

* extend schema for jsoneditor

* implement ledcolors streaming with 4fps

* implement component state
This commit is contained in:
redPanther
2016-09-07 20:10:37 +02:00
committed by GitHub
parent 4c6a4a1f93
commit 2beccb0912
35 changed files with 675 additions and 279 deletions

View File

@@ -0,0 +1,28 @@
#pragma once
#include <utils/Components.h>
#include <utils/Logger.h>
// STL includes
#include <map>
#include <QObject>
class ComponentRegister : public QObject
{
Q_OBJECT
public:
ComponentRegister();
~ComponentRegister();
std::map<hyperion::Components, bool> getRegister() { return _componentStates; };
public slots:
void componentStateChanged(const hyperion::Components comp, const bool activated);
private:
std::map<hyperion::Components, bool> _componentStates;
Logger * _log;
};

View File

@@ -21,6 +21,7 @@
#include <hyperion/ColorCorrection.h>
#include <hyperion/ColorAdjustment.h>
#include <hyperion/MessageForwarder.h>
#include <hyperion/ComponentRegister.h>
// Effect engine includes
#include <effectengine/EffectDefinition.h>
@@ -158,6 +159,9 @@ public:
/// @param state The state of the component [true | false]
///
void setComponentState(const hyperion::Components component, const bool state);
ComponentRegister& getComponentRegister() { return _componentRegister; };
public slots:
///
/// Writes a single color to all the leds for the given time and priority
@@ -359,6 +363,8 @@ private:
/// count of hardware leds
unsigned _hwLedCount;
ComponentRegister _componentRegister;
/// register of input sources and it's prio channel
PriorityRegister _priorityRegister;

View File

@@ -29,6 +29,8 @@ public:
void addProtoSlave(std::string slave);
bool protoForwardingEnabled();
bool jsonForwardingEnabled();
bool forwardingEnabled() { return jsonForwardingEnabled() || protoForwardingEnabled(); };
QStringList getProtoSlaves();
QList<MessageForwarder::JsonSlaveAddress> getJsonSlaves();