From d32d36b936cb031ba1b11c67c0d9c6afbdc280b3 Mon Sep 17 00:00:00 2001 From: Loïc Collignon Date: Tue, 18 Dec 2018 17:16:35 +0100 Subject: Reworked the way qml create sliders MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Use the qml MVC to populate a ListView with components based on a template VolumeSlider. Should now handle potential disconnections, volume changes by third-party and also fix the issue where sliders are set to 0 at startup. Change-Id: I2961d5a1584a121c473ece253faa90a747c64445 Signed-off-by: Loïc Collignon --- app/mixer.h | 58 ---------------------------------------------------------- 1 file changed, 58 deletions(-) delete mode 100644 app/mixer.h (limited to 'app/mixer.h') diff --git a/app/mixer.h b/app/mixer.h deleted file mode 100644 index bc1b740..0000000 --- a/app/mixer.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Copyright (C) 2016 The Qt Company Ltd. - * Copyright (C) 2016,2017 Konsulko Group - * Copyright (C) 2018 IoT.bzh - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -#pragma once - -#include -#include -#include -#include -#include -#include "qafbwebsocketclient.h" - -class Mixer - : public QObject -{ - Q_OBJECT - Q_PROPERTY(QStringList roles READ roles NOTIFY rolesChanged) - -private: - QUrl m_url; - QMap m_volumes; - QStringList m_roles; - QAfbWebsocketClient m_client; - -public: - explicit Mixer(QObject* parent = nullptr); - Mixer(const Mixer&) = delete; - - Q_INVOKABLE void open(const QUrl& url); - Q_INVOKABLE QStringList roles() const; - Q_INVOKABLE void setVolume(const QString& name, int value); - Q_INVOKABLE void getVolume(const QString& name); - -signals: - void rolesChanged(); - void volumeChanged(const QString& name, int value); - -private slots: - void onClientConnected(); - void onClientDisconnected(); - void onClientError(QAbstractSocket::SocketError se); - void onRetryOpen(); - void onClientEventReceived(QString eventName, const QJsonValue& data); -}; -- cgit 1.2.3-korg