summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordaniel-Jones <daniel@danieljon.es>2016-05-30 10:08:26 +0930
committerdaniel-Jones <daniel@danieljon.es>2016-05-30 10:08:26 +0930
commit410fbd473ad039dc815bc450f3b26732b13ac4dc (patch)
tree64ffc2a0d7e3ff0881f3a2500d6d63d8d52f7dba
downloadRGB-Controller-410fbd473ad039dc815bc450f3b26732b13ac4dc.tar.gz
RGB-Controller-410fbd473ad039dc815bc450f3b26732b13ac4dc.zip
First code commit
-rw-r--r--README.md1
-rw-r--r--arduino/rgb/rgb.ino44
-rwxr-xr-xqt/RGBController/RGBController.pro22
-rwxr-xr-xqt/RGBController/RGBController.pro.user336
-rwxr-xr-xqt/RGBController/controllerwindow.cpp255
-rwxr-xr-xqt/RGBController/controllerwindow.h75
-rwxr-xr-xqt/RGBController/controllerwindow.ui210
-rwxr-xr-xqt/RGBController/main.cpp11
-rw-r--r--qt/RGBController/serial_communication.cpp47
-rw-r--r--qt/RGBController/serial_communication.h23
-rwxr-xr-xqt/build/degub/Makefile709
-rwxr-xr-xqt/build/degub/RGBControllerbin0 -> 1289960 bytes
-rw-r--r--qt/build/degub/controllerwindow.obin0 -> 990128 bytes
-rw-r--r--qt/build/degub/main.obin0 -> 872920 bytes
-rwxr-xr-xqt/build/degub/moc_controllerwindow.cpp171
-rw-r--r--qt/build/degub/moc_controllerwindow.obin0 -> 969920 bytes
-rw-r--r--qt/build/degub/presets.txt12
-rw-r--r--qt/build/degub/serial_communication.obin0 -> 533368 bytes
-rwxr-xr-xqt/build/degub/ui_controllerwindow.h219
19 files changed, 2135 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..9ed6291
--- /dev/null
+++ b/README.md
@@ -0,0 +1 @@
+# RGB-Controller
diff --git a/arduino/rgb/rgb.ino b/arduino/rgb/rgb.ino
new file mode 100644
index 0000000..702fbe1
--- /dev/null
+++ b/arduino/rgb/rgb.ino
@@ -0,0 +1,44 @@
+int incomingByte = 0; // for incoming serial data
+const int redPin = 2;
+const int greenPin = 4;
+const int bluePin = 3;
+
+int red;
+int green;
+int blue;
+
+String inData;
+void setup() {
+ Serial.begin(9600); // opens serial port, sets data rate to 9600 bps
+ red = 0;
+ green = 0;
+ blue = 0;
+ pinMode(redPin, OUTPUT);
+ pinMode(greenPin, OUTPUT);
+ pinMode(bluePin, OUTPUT);
+}
+
+void loop() {
+
+ // send data only when you receive data:
+ if (Serial.available() > 0) {
+ char recieved = Serial.read();
+ inData += recieved;
+
+ // Process message when new line character is recieved
+ if (recieved == '\n')
+ {
+ Serial.print("string: ");
+ Serial.print(inData);
+ String first = Serial.readStringUntil(',');
+ Serial.read(); //next character is comma, so skip it using this
+ String second = Serial.readStringUntil(',');
+ Serial.read();
+ String third = Serial.readStringUntil('\0');
+ Serial.print(first + "\n");
+ Serial.print(second + "\n");
+ Serial.print(third + "\n");
+ inData = ""; // Clear recieved buffer
+ }
+ }
+}
diff --git a/qt/RGBController/RGBController.pro b/qt/RGBController/RGBController.pro
new file mode 100755
index 0000000..d075466
--- /dev/null
+++ b/qt/RGBController/RGBController.pro
@@ -0,0 +1,22 @@
+#-------------------------------------------------
+#
+# Project created by QtCreator 2016-03-07T11:25:55
+#
+#-------------------------------------------------
+
+QT += core gui serialport network
+
+greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
+
+TARGET = RGBController
+TEMPLATE = app
+
+
+SOURCES += main.cpp\
+ controllerwindow.cpp \
+ serial_communication.cpp
+
+HEADERS += controllerwindow.h \
+ serial_communication.h
+
+FORMS += controllerwindow.ui
diff --git a/qt/RGBController/RGBController.pro.user b/qt/RGBController/RGBController.pro.user
new file mode 100755
index 0000000..1b89dcd
--- /dev/null
+++ b/qt/RGBController/RGBController.pro.user
@@ -0,0 +1,336 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE QtCreatorProject>
+<!-- Written by QtCreator 4.0.0, 2016-05-29T21:56:23. -->
+<qtcreator>
+ <data>
+ <variable>EnvironmentId</variable>
+ <value type="QByteArray">{c148e485-3cf0-4847-b5fd-56246b2688e8}</value>
+ </data>
+ <data>
+ <variable>ProjectExplorer.Project.ActiveTarget</variable>
+ <value type="int">0</value>
+ </data>
+ <data>
+ <variable>ProjectExplorer.Project.EditorSettings</variable>
+ <valuemap type="QVariantMap">
+ <value type="bool" key="EditorConfiguration.AutoIndent">true</value>
+ <value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
+ <value type="bool" key="EditorConfiguration.CamelCaseNavigation">true</value>
+ <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
+ <value type="QString" key="language">Cpp</value>
+ <valuemap type="QVariantMap" key="value">
+ <value type="QByteArray" key="CurrentPreferences">CppGlobal</value>
+ </valuemap>
+ </valuemap>
+ <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
+ <value type="QString" key="language">QmlJS</value>
+ <valuemap type="QVariantMap" key="value">
+ <value type="QByteArray" key="CurrentPreferences">QmlJSGlobal</value>
+ </valuemap>
+ </valuemap>
+ <value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
+ <value type="QByteArray" key="EditorConfiguration.Codec">UTF-8</value>
+ <value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
+ <value type="int" key="EditorConfiguration.IndentSize">4</value>
+ <value type="bool" key="EditorConfiguration.KeyboardTooltips">false</value>
+ <value type="int" key="EditorConfiguration.MarginColumn">80</value>
+ <value type="bool" key="EditorConfiguration.MouseHiding">true</value>
+ <value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
+ <value type="int" key="EditorConfiguration.PaddingMode">1</value>
+ <value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
+ <value type="bool" key="EditorConfiguration.ShowMargin">false</value>
+ <value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
+ <value type="bool" key="EditorConfiguration.SmartSelectionChanging">true</value>
+ <value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
+ <value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
+ <value type="int" key="EditorConfiguration.TabSize">8</value>
+ <value type="bool" key="EditorConfiguration.UseGlobal">true</value>
+ <value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
+ <value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
+ <value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
+ <value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
+ <value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
+ </valuemap>
+ </data>
+ <data>
+ <variable>ProjectExplorer.Project.PluginSettings</variable>
+ <valuemap type="QVariantMap"/>
+ </data>
+ <data>
+ <variable>ProjectExplorer.Project.Target.0</variable>
+ <valuemap type="QVariantMap">
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">{a6071b8b-a567-46c9-babb-33312c5773b5}</value>
+ <value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
+ <value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
+ <value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
+ <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
+ <value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/daniel_j/documents/school/2016 research project/RGBController/qt/build/degub</value>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">true</value>
+ <value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.SeparateDebugInfo">false</value>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
+ <valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
+ <value type="QString">-w</value>
+ <value type="QString">-r</value>
+ </valuelist>
+ <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
+ <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
+ <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
+ <valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
+ <value type="QString">-w</value>
+ <value type="QString">-r</value>
+ </valuelist>
+ <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
+ <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
+ <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
+ <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
+ <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Debug</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
+ <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
+ <value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
+ <value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/daniel_j/documents/school/research_project/2016 research project/RGBController/qt/build-RGBController-Desktop-Release</value>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
+ <value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.SeparateDebugInfo">false</value>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
+ <valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
+ <value type="QString">-w</value>
+ <value type="QString">-r</value>
+ </valuelist>
+ <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
+ <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
+ <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
+ <valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
+ <value type="QString">-w</value>
+ <value type="QString">-r</value>
+ </valuelist>
+ <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
+ <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
+ <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
+ <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
+ <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Release</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
+ <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
+ <value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.2">
+ <value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/daniel_j/documents/school/research_project/2016 research project/RGBController/qt/build-RGBController-Desktop-Profile</value>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">true</value>
+ <value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.SeparateDebugInfo">true</value>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
+ <valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
+ <value type="QString">-w</value>
+ <value type="QString">-r</value>
+ </valuelist>
+ <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
+ <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
+ <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
+ </valuemap>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
+ <valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
+ <value type="QString">-w</value>
+ <value type="QString">-r</value>
+ </valuelist>
+ <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
+ <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
+ <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
+ <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
+ <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Profile</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
+ <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
+ <value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">3</value>
+ <valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
+ <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy locally</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
+ <valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
+ <valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
+ <value type="bool" key="Analyzer.QmlProfiler.AggregateTraces">false</value>
+ <value type="bool" key="Analyzer.QmlProfiler.FlushEnabled">false</value>
+ <value type="uint" key="Analyzer.QmlProfiler.FlushInterval">1000</value>
+ <value type="QString" key="Analyzer.QmlProfiler.LastTraceFile"></value>
+ <value type="bool" key="Analyzer.QmlProfiler.Settings.UseGlobalSettings">true</value>
+ <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
+ <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
+ <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
+ <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
+ <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
+ <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
+ <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
+ <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
+ <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
+ <value type="int" key="Analyzer.Valgrind.LeakCheckOnFinish">1</value>
+ <value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
+ <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
+ <value type="int" key="Analyzer.Valgrind.SelfModifyingCodeDetection">1</value>
+ <value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
+ <value type="bool" key="Analyzer.Valgrind.ShowReachable">false</value>
+ <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
+ <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
+ <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
+ <value type="int">0</value>
+ <value type="int">1</value>
+ <value type="int">2</value>
+ <value type="int">3</value>
+ <value type="int">4</value>
+ <value type="int">5</value>
+ <value type="int">6</value>
+ <value type="int">7</value>
+ <value type="int">8</value>
+ <value type="int">9</value>
+ <value type="int">10</value>
+ <value type="int">11</value>
+ <value type="int">12</value>
+ <value type="int">13</value>
+ <value type="int">14</value>
+ </valuelist>
+ <value type="int" key="PE.EnvironmentAspect.Base">2</value>
+ <valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">RGBController</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">RGBController2</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:/home/daniel_j/documents/school/2016 research project/RGBController/qt/RGBController/RGBController.pro</value>
+ <value type="bool" key="QmakeProjectManager.QmakeRunConfiguration.UseLibrarySearchPath">true</value>
+ <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
+ <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">RGBController.pro</value>
+ <value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
+ <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
+ <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory.default">/home/daniel_j/documents/school/2016 research project/RGBController/qt/build/degub</value>
+ <value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
+ <value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
+ <value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
+ <value type="bool" key="RunConfiguration.UseMultiProcess">false</value>
+ <value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
+ <value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
+ </valuemap>
+ </data>
+ <data>
+ <variable>ProjectExplorer.Project.TargetCount</variable>
+ <value type="int">1</value>
+ </data>
+ <data>
+ <variable>ProjectExplorer.Project.Updater.FileVersion</variable>
+ <value type="int">18</value>
+ </data>
+ <data>
+ <variable>Version</variable>
+ <value type="int">18</value>
+ </data>
+</qtcreator>
diff --git a/qt/RGBController/controllerwindow.cpp b/qt/RGBController/controllerwindow.cpp
new file mode 100755
index 0000000..302e3d2
--- /dev/null
+++ b/qt/RGBController/controllerwindow.cpp
@@ -0,0 +1,255 @@
+#include "controllerwindow.h"
+
+controllerWindow::controllerWindow(QWidget *parent) :
+ QMainWindow(parent),
+ ui(new Ui::controllerWindow)
+{
+ /* this is our setup function, we set things up here */
+ ui->setupUi(this);
+ info_log("RGB Controller started");
+ /* disable buttons and widgets that should not be enabled yet, set slider values to 0 */
+ ui->disconnect_button->setEnabled(false);
+ ui->connect_button->setEnabled(false);
+ ui->red_button->setEnabled(false);
+ ui->green_button->setEnabled(false);
+ ui->blue_button->setEnabled(false);
+ ui->off_button->setEnabled(false);
+ ui->reload_preset_button->setEnabled(false);
+ ui->set_preset_button->setEnabled(false);
+ ui->presets_dropdown->setEnabled(false);
+ ui->r_slider->setEnabled(false);
+ ui->g_slider->setEnabled(false);
+ ui->b_slider->setEnabled(false);
+ ui->r_slider->setValue(0);
+ ui->g_slider->setValue(0);
+ ui->b_slider->setValue(0);
+ /* set some crucial ints */
+ preset_index = 0, r = 0, g = 0, b = 0;
+ /* populate our serial port dropdown box */
+ populate_serial_list();
+ /* load our presets file */
+ load_presets();
+}
+
+controllerWindow::~controllerWindow()
+{
+ /* this function will end our program and clean up */
+ delete ui;
+}
+
+void controllerWindow::info_log(QString text)
+{
+ /* this function is used to append logging information to our text area */
+ ui->info_log_textarea->append(text);
+}
+
+void controllerWindow::populate_serial_list()
+{
+ /*
+ * things to be done here:
+ * - clear anything inside our serial dropdown box
+ * - re-populate the serial dropdown box
+ */
+
+ /* remove anything in the list */
+ ui->arduino_port_dropdown->clear();
+ /* populate the list */
+ for (int x = 0; x < QSerialPortInfo::availablePorts().size(); x++)
+ {
+ if (!QSerialPortInfo::availablePorts().at(x).description().isEmpty())
+ ui->arduino_port_dropdown->addItem(QSerialPortInfo::availablePorts().at(x).portName());
+ }
+ if (!ui->arduino_port_dropdown->itemText(0).isEmpty())
+ {
+ ui->connect_button->setEnabled(true);
+ info_log("Serial port list populated");
+ } else
+ {
+ info_log("No serial port found!");
+ ui->arduino_port_dropdown->addItem("None");
+ }
+}
+
+void controllerWindow::load_presets()
+{
+ /*
+ * this function will load presets from file and put them into a drop down box
+ * How i plan for it to work:
+ * -> load file
+ * -> parse line by line
+ * -> split line at delimeter
+ * -> add [0] to dropdown (name), add [1] to an array that stores all the values
+ */
+ QFile inputFile("presets.txt");
+ if (inputFile.open(QIODevice::ReadOnly))
+ {
+ QTextStream in(&inputFile);
+ while (!in.atEnd())
+ {
+ QString line = in.readLine();
+ if (line.contains("="))
+ {
+ ui->presets_dropdown->addItem(line.split("=")[0]);
+ presets.append(line.split("=")[1]);
+ }
+ }
+ inputFile.close();
+ info_log("Presets loaded");
+ } else
+ info_log("Presets file not found.");
+}
+
+void controllerWindow::serial_rgb_change(int r, int g, int b)
+{
+ portf.rgb_change(r, g, b);
+}
+
+
+/*
+ *
+ * button and widget functions below
+ *
+ */
+
+void controllerWindow::on_connect_button_clicked()
+{
+ /*
+ * here we need to call our serial port connect function
+ * if our connection is sucessful we need to enable and disable a few buttons and widgets
+ * we must also change our rgb sliders etc
+ */
+ port = ui->arduino_port_dropdown->currentText();
+ if (portf.serial_connect(port))
+ { // if true we are connected
+ info_log("Connection established");
+ ui->arduino_status_label->setText("<font color=green>Connected</font>");
+ /* now we need to disabled and enable some buttons and objects */
+ ui->disconnect_button->setEnabled(true);
+ ui->connect_button->setEnabled(false);
+ ui->red_button->setEnabled(true);
+ ui->green_button->setEnabled(true);
+ ui->blue_button->setEnabled(true);
+ ui->off_button->setEnabled(true);
+ ui->reload_preset_button->setEnabled(true);
+ ui->set_preset_button->setEnabled(true);
+ ui->presets_dropdown->setEnabled(true);
+ ui->r_slider->setEnabled(true);
+ ui->g_slider->setEnabled(true);
+ ui->b_slider->setEnabled(true);
+ ui->refresh_port_button->setEnabled(false);
+ ui->arduino_port_dropdown->setEnabled(false);
+ } else
+ {
+ info_log("Unable to connect (port in use?)");
+ }
+
+}
+
+void controllerWindow::on_disconnect_button_clicked()
+{
+ /*
+ * here we will attempt to disconnect from our serial port
+ * we will also enable/disable some buttons and widgets and set slider values to 0
+ */
+ if (portf.serial_disconnect())
+ {
+ info_log("Disconnected from serial port");
+ ui->arduino_status_label->setText("<font color=red>Disconnected</font>");
+ ui->disconnect_button->setEnabled(false);
+ ui->connect_button->setEnabled(true);
+ ui->red_button->setEnabled(false);
+ ui->green_button->setEnabled(false);
+ ui->blue_button->setEnabled(false);
+ ui->off_button->setEnabled(false);
+ ui->reload_preset_button->setEnabled(false);
+ ui->set_preset_button->setEnabled(false);
+ ui->presets_dropdown->setEnabled(false);
+ ui->refresh_port_button->setEnabled(true);
+ ui->arduino_port_dropdown->setEnabled(true);
+ ui->r_slider->setEnabled(false);
+ ui->g_slider->setEnabled(false);
+ ui->b_slider->setEnabled(false);
+ ui->r_slider->setValue(0);
+ ui->g_slider->setValue(0);
+ ui->b_slider->setValue(0);
+
+ } else
+ {
+ /* I have no clue how we'd get here */
+ info_log("Cannot disconnect");
+ }
+}
+
+void controllerWindow::on_refresh_port_button_clicked()
+{
+ populate_serial_list();
+}
+
+void controllerWindow::on_reload_preset_button_clicked()
+{
+ ui->presets_dropdown->clear();
+ presets.clear();
+ preset_index = 0;
+ load_presets();
+}
+
+void controllerWindow::on_r_slider_valueChanged(int value)
+{
+ r = value;
+ serial_rgb_change(r, g, b);
+}
+
+void controllerWindow::on_g_slider_valueChanged(int value)
+{
+ g = value;
+ serial_rgb_change(r, g, b);
+}
+
+void controllerWindow::on_b_slider_valueChanged(int value)
+{
+ b = value;
+ serial_rgb_change(r, g, b);
+}
+
+void controllerWindow::on_red_button_clicked()
+{
+ ui->r_slider->setValue(255);
+ ui->g_slider->setValue(0);
+ ui->b_slider->setValue(0);
+}
+
+void controllerWindow::on_green_button_clicked()
+{
+ ui->r_slider->setValue(0);
+ ui->g_slider->setValue(255);
+ ui->b_slider->setValue(0);
+}
+
+void controllerWindow::on_blue_button_clicked()
+{
+ ui->r_slider->setValue(0);
+ ui->g_slider->setValue(0);
+ ui->b_slider->setValue(255);
+}
+
+void controllerWindow::on_off_button_clicked()
+{
+ ui->r_slider->setValue(0);
+ ui->g_slider->setValue(0);
+ ui->b_slider->setValue(0);
+}
+
+void controllerWindow::on_set_preset_button_clicked()
+{
+ QString tempstore = presets.at(preset_index);
+ QStringList temparray = tempstore.split(",");
+ info_log("Preset selected: " + temparray[0] + " " + temparray[1] + " " + temparray[2]);
+ ui->r_slider->setValue(temparray[0].toInt());
+ ui->g_slider->setValue(temparray[1].toInt());
+ ui->b_slider->setValue(temparray[2].toInt());
+}
+
+void controllerWindow::on_presets_dropdown_currentIndexChanged(int index)
+{
+ preset_index = index;
+}
diff --git a/qt/RGBController/controllerwindow.h b/qt/RGBController/controllerwindow.h
new file mode 100755
index 0000000..350a599
--- /dev/null
+++ b/qt/RGBController/controllerwindow.h
@@ -0,0 +1,75 @@
+#ifndef CONTROLLERWINDOW_H
+#define CONTROLLERWINDOW_H
+
+/* includes */
+
+#include <QMainWindow>
+#include <QDebug>
+#include <QFile>
+#include <QSerialPortInfo>
+#include <QTextStream>
+#include "serial_communication.h"
+#include "ui_controllerwindow.h"
+
+namespace Ui {
+ class controllerWindow;
+}
+
+class controllerWindow : public QMainWindow
+{
+ Q_OBJECT
+
+ public:
+ explicit controllerWindow(QWidget *parent = 0);
+ ~controllerWindow();
+
+ /* public functions */
+ void info_log(QString text);
+ void populate_serial_list();
+ void load_presets();
+ void serial_rgb_change(int r, int g, int b);
+ /*public variables */
+ /* these three ints will hold the current value (0 - 255) of each slider */
+ int r, g, b;
+ /* this list will contain all the presets loaded from file */
+ QStringList presets;
+ /* this string will hold our selected serial port */
+ QString port;
+ /* this int will contain the current preset index selected */
+ int preset_index;
+
+private slots:
+ /* these slots are used to trigger button clicks and drop down items selections etc */
+ void on_connect_button_clicked();
+
+ void on_disconnect_button_clicked();
+
+ void on_refresh_port_button_clicked();
+
+ void on_reload_preset_button_clicked();
+
+ void on_r_slider_valueChanged(int value);
+
+ void on_g_slider_valueChanged(int value);
+
+ void on_b_slider_valueChanged(int value);
+
+ void on_red_button_clicked();
+
+ void on_green_button_clicked();
+
+ void on_blue_button_clicked();
+
+ void on_off_button_clicked();
+
+ void on_set_preset_button_clicked();
+
+ void on_presets_dropdown_currentIndexChanged(int index);
+
+private:
+ Ui::controllerWindow *ui;
+ /* serial communication object */
+ serial_communication portf;
+};
+
+#endif // CONTROLLERWINDOW_H
diff --git a/qt/RGBController/controllerwindow.ui b/qt/RGBController/controllerwindow.ui
new file mode 100755
index 0000000..1907b33
--- /dev/null
+++ b/qt/RGBController/controllerwindow.ui
@@ -0,0 +1,210 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>controllerWindow</class>
+ <widget class="QMainWindow" name="controllerWindow">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>229</width>
+ <height>394</height>
+ </rect>
+ </property>
+ <property name="windowTitle">
+ <string>RGB Controller</string>
+ </property>
+ <widget class="QWidget" name="centralWidget">
+ <layout class="QFormLayout" name="formLayout">
+ <item row="0" column="0">
+ <widget class="QLabel" name="status_label">
+ <property name="text">
+ <string>Status</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1">
+ <widget class="QLabel" name="arduino_status_label">
+ <property name="text">
+ <string>&lt;font color = red&gt;Disconnected&lt;/font&gt;</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0">
+ <widget class="QLabel" name="arduino_port_label">
+ <property name="minimumSize">
+ <size>
+ <width>120</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="text">
+ <string>Arduino port</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1">
+ <widget class="QComboBox" name="arduino_port_dropdown"/>
+ </item>
+ <item row="2" column="1">
+ <widget class="QPushButton" name="refresh_port_button">
+ <property name="text">
+ <string>Refresh</string>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="0">
+ <widget class="QPushButton" name="connect_button">
+ <property name="text">
+ <string>Connect</string>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="1">
+ <widget class="QPushButton" name="disconnect_button">
+ <property name="text">
+ <string>Disconnect</string>
+ </property>
+ </widget>
+ </item>
+ <item row="4" column="0">
+ <widget class="QLabel" name="rgb_label">
+ <property name="text">
+ <string>RGB colors</string>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="1">
+ <widget class="QPushButton" name="red_button">
+ <property name="text">
+ <string>Red</string>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="0">
+ <widget class="QSlider" name="r_slider">
+ <property name="minimumSize">
+ <size>
+ <width>120</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>120</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="maximum">
+ <number>255</number>
+ </property>
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="6" column="0">
+ <widget class="QSlider" name="g_slider">
+ <property name="minimumSize">
+ <size>
+ <width>120</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>120</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="maximum">
+ <number>255</number>
+ </property>
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="7" column="0">
+ <widget class="QSlider" name="b_slider">
+ <property name="minimumSize">
+ <size>
+ <width>120</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>120</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="maximum">
+ <number>255</number>
+ </property>
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="6" column="1">
+ <widget class="QPushButton" name="green_button">
+ <property name="text">
+ <string>Green</string>
+ </property>
+ </widget>
+ </item>
+ <item row="7" column="1">
+ <widget class="QPushButton" name="blue_button">
+ <property name="text">
+ <string>Blue</string>
+ </property>
+ </widget>
+ </item>
+ <item row="9" column="0">
+ <widget class="QLabel" name="presets_label">
+ <property name="text">
+ <string>Presets</string>
+ </property>
+ </widget>
+ </item>
+ <item row="8" column="1">
+ <widget class="QPushButton" name="off_button">
+ <property name="text">
+ <string>Off</string>
+ </property>
+ </widget>
+ </item>
+ <item row="12" column="0">
+ <widget class="QLabel" name="info_log_label">
+ <property name="text">
+ <string>Information log</string>
+ </property>
+ </widget>
+ </item>
+ <item row="11" column="1">
+ <widget class="QPushButton" name="reload_preset_button">
+ <property name="text">
+ <string>Reload</string>
+ </property>
+ </widget>
+ </item>
+ <item row="10" column="1">
+ <widget class="QPushButton" name="set_preset_button">
+ <property name="text">
+ <string>Set</string>
+ </property>
+ </widget>
+ </item>
+ <item row="10" column="0">
+ <widget class="QComboBox" name="presets_dropdown"/>
+ </item>
+ <item row="13" column="0" colspan="2">
+ <widget class="QTextEdit" name="info_log_textarea"/>
+ </item>
+ </layout>
+ </widget>
+ </widget>
+ <layoutdefault spacing="6" margin="11"/>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/qt/RGBController/main.cpp b/qt/RGBController/main.cpp
new file mode 100755
index 0000000..4d44399
--- /dev/null
+++ b/qt/RGBController/main.cpp
@@ -0,0 +1,11 @@
+#include "controllerwindow.h"
+#include <QApplication>
+
+int main(int argc, char *argv[])
+{
+ QApplication a(argc, argv);
+ controllerWindow w;
+ w.show();
+
+ return a.exec();
+}
diff --git a/qt/RGBController/serial_communication.cpp b/qt/RGBController/serial_communication.cpp
new file mode 100644
index 0000000..94e75db
--- /dev/null
+++ b/qt/RGBController/serial_communication.cpp
@@ -0,0 +1,47 @@
+#include "serial_communication.h"
+#include "controllerwindow.h"
+serial_communication::serial_communication()
+{
+
+}
+
+bool serial_communication::serial_connect(QString port)
+{
+ /* this function will attempt a serial connection if we are not already connected */
+ if (!serial.isOpen())
+ {
+ serial.setPortName(port);
+ serial.setBaudRate(QSerialPort::Baud9600);
+ serial.setDataBits(QSerialPort::Data8);
+ serial.setParity(QSerialPort::NoParity);
+ serial.setStopBits(QSerialPort::OneStop);
+ serial.setFlowControl(QSerialPort::NoFlowControl);
+ serial.open(QIODevice::ReadWrite);
+ serial.waitForBytesWritten(9000);
+ if (serial.isWritable()) {
+ return true;
+ }
+ }
+ return false;
+}
+
+bool serial_communication::serial_disconnect()
+{
+ /* this function disconnects from the serial port if it is connected already */
+ if (serial.isOpen())
+ {
+ serial.close();
+ return true;
+ }
+ return false;
+}
+
+void serial_communication::rgb_change(int r, int g, int b)
+{
+ /* here we send our rgb values to the serial port */
+ data = "";
+ /* the 0 is a hack, i need to look into it at some point */
+ data.append("0" + QString::number(r) + "," + QString::number(g) + "," + QString::number(b) + "\n");
+ if (serial.isOpen())
+ serial.write(data);
+}
diff --git a/qt/RGBController/serial_communication.h b/qt/RGBController/serial_communication.h
new file mode 100644
index 0000000..d037757
--- /dev/null
+++ b/qt/RGBController/serial_communication.h
@@ -0,0 +1,23 @@
+#ifndef SERIAL_COMMUNICATION_H
+#define SERIAL_COMMUNICATION_H
+
+/* includes */
+#include <QSerialPort>
+#include <QSerialPortInfo>
+
+
+class serial_communication
+{
+public:
+ /* function declares */
+ serial_communication();
+ bool serial_connect(QString port);
+ bool serial_disconnect();
+ void rgb_change(int r, int g, int b);
+ /* variables */
+ QString port_name;
+ QSerialPort serial;
+ QByteArray data;
+};
+
+#endif // SERIAL_COMMUNICATION_H
diff --git a/qt/build/degub/Makefile b/qt/build/degub/Makefile
new file mode 100755
index 0000000..b5ca973
--- /dev/null
+++ b/qt/build/degub/Makefile
@@ -0,0 +1,709 @@
+#############################################################################
+# Makefile for building: RGBController
+# Generated by qmake (3.0) (Qt 5.6.0)
+# Project: ../../RGBController/RGBController.pro
+# Template: app
+# Command: /usr/lib/qt/bin/qmake -spec linux-g++ CONFIG+=debug CONFIG+=qml_debug -o Makefile ../../RGBController/RGBController.pro
+#############################################################################
+
+MAKEFILE = Makefile
+
+####### Compiler, tools and options
+
+CC = gcc
+CXX = g++
+DEFINES = -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_SERIALPORT_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB
+CFLAGS = -pipe -g -Wall -W -D_REENTRANT -fPIC $(DEFINES)
+CXXFLAGS = -pipe -g -std=gnu++0x -Wall -W -D_REENTRANT -fPIC $(DEFINES)
+INCPATH = -I../../RGBController -I. -isystem /usr/include/qt -isystem /usr/include/qt/QtWidgets -isystem /usr/include/qt/QtGui -isystem /usr/include/qt/QtSerialPort -isystem /usr/include/qt/QtNetwork -isystem /usr/include/qt/QtCore -I. -I. -I/usr/lib/qt/mkspecs/linux-g++
+QMAKE = /usr/lib/qt/bin/qmake
+DEL_FILE = rm -f
+CHK_DIR_EXISTS= test -d
+MKDIR = mkdir -p
+COPY = cp -f
+COPY_FILE = cp -f
+COPY_DIR = cp -f -R
+INSTALL_FILE = install -m 644 -p
+INSTALL_PROGRAM = install -m 755 -p
+INSTALL_DIR = cp -f -R
+DEL_FILE = rm -f
+SYMLINK = ln -f -s
+DEL_DIR = rmdir
+MOVE = mv -f
+TAR = tar -cf
+COMPRESS = gzip -9f
+DISTNAME = RGBController1.0.0
+DISTDIR = /home/daniel_j/documents/school/2016\ research\ project/RGBController/qt/build/degub/.tmp/RGBController1.0.0
+LINK = g++
+LFLAGS =
+LIBS = $(SUBLIBS) -lQt5Widgets -lQt5Gui -lQt5SerialPort -lQt5Network -lQt5Core -lGL -lpthread
+AR = ar cqs
+RANLIB =
+SED = sed
+STRIP = strip
+
+####### Output directory
+
+OBJECTS_DIR = ./
+
+####### Files
+
+SOURCES = ../../RGBController/main.cpp \
+ ../../RGBController/controllerwindow.cpp \
+ ../../RGBController/serial_communication.cpp moc_controllerwindow.cpp
+OBJECTS = main.o \
+ controllerwindow.o \
+ serial_communication.o \
+ moc_controllerwindow.o
+DIST = /usr/lib/qt/mkspecs/features/spec_pre.prf \
+ /usr/lib/qt/mkspecs/common/unix.conf \
+ /usr/lib/qt/mkspecs/common/linux.conf \
+ /usr/lib/qt/mkspecs/common/sanitize.conf \
+ /usr/lib/qt/mkspecs/common/gcc-base.conf \
+ /usr/lib/qt/mkspecs/common/gcc-base-unix.conf \
+ /usr/lib/qt/mkspecs/common/g++-base.conf \
+ /usr/lib/qt/mkspecs/common/g++-unix.conf \
+ /usr/lib/qt/mkspecs/qconfig.pri \
+ /usr/lib/qt/mkspecs/modules/qt_Attica.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KArchive.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KAuth.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KBookmarks.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCodecs.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCompletion.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KConfigCore.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KConfigGui.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KConfigWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCoreAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCrash.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KDBusAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KDEWebKit.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KEmoticons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KGlobalAccel.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KGuiAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KI18n.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIconThemes.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIOCore.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIOFileWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIOGui.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIOWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KItemModels.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KItemViews.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KJobWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KNotifications.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KNotifyConfig.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KNTLM.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KParts.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KPlotting.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KPty.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KService.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KTextWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KUnitConversion.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KWallet.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KWidgetsAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KWindowSystem.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KXmlGui.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dcore.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dcore_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dinput.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dinput_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dlogic.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dlogic_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dquick.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dquick_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dquickinput.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dquickinput_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dquickrender.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dquickrender_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3drender.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3drender_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_bluetooth.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_bluetooth_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_clucene_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_concurrent.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_concurrent_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_core.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_core_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_dbus.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_dbus_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_designer.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_designer_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_designercomponents_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_eglfs_device_lib_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_enginio.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_enginio_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_gui.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_gui_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_help.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_help_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_location.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_location_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_multimedia.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_multimedia_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_network.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_network_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_nfc.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_nfc_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_opengl.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_opengl_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_openglextensions.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_openglextensions_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_platformsupport_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_positioning.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_positioning_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_printsupport.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_printsupport_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_qml.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_qml_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_qmldevtools_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_qmltest.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_qmltest_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_quick.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_quick_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_quickparticles_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_script.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_script_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_scripttools.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_scripttools_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_sensors.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_sensors_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_serialport.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_serialport_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_sql.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_sql_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_svg.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_svg_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_testlib.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_testlib_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_uiplugin.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_uitools.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_uitools_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_waylandclient.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_waylandclient_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webchannel.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webchannel_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webengine.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webengine_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webenginecore.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webenginecore_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webenginecoreheaders_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webenginewidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webenginewidgets_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webkit.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webkit_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_websockets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_websockets_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_widgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_widgets_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_x11extras.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_x11extras_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_xcb_qpa_lib_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_xml.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_xml_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_phonon4qt5.pri \
+ /usr/lib/qt/mkspecs/modules/qt_QGpgme.pri \
+ /usr/lib/qt/mkspecs/modules/qt_Solid.pri \
+ /usr/lib/qt/mkspecs/modules/qt_SonnetCore.pri \
+ /usr/lib/qt/mkspecs/modules/qt_SonnetUi.pri \
+ /usr/lib/qt/mkspecs/features/qt_functions.prf \
+ /usr/lib/qt/mkspecs/features/qt_config.prf \
+ /usr/lib/qt/mkspecs/linux-g++/qmake.conf \
+ /usr/lib/qt/mkspecs/features/spec_post.prf \
+ /usr/lib/qt/mkspecs/features/exclusive_builds.prf \
+ /usr/lib/qt/mkspecs/features/default_pre.prf \
+ /usr/lib/qt/mkspecs/features/resolve_config.prf \
+ /usr/lib/qt/mkspecs/features/default_post.prf \
+ /usr/lib/qt/mkspecs/features/qml_debug.prf \
+ /usr/lib/qt/mkspecs/features/warn_on.prf \
+ /usr/lib/qt/mkspecs/features/qt.prf \
+ /usr/lib/qt/mkspecs/features/resources.prf \
+ /usr/lib/qt/mkspecs/features/moc.prf \
+ /usr/lib/qt/mkspecs/features/unix/opengl.prf \
+ /usr/lib/qt/mkspecs/features/uic.prf \
+ /usr/lib/qt/mkspecs/features/unix/thread.prf \
+ /usr/lib/qt/mkspecs/features/testcase_targets.prf \
+ /usr/lib/qt/mkspecs/features/exceptions.prf \
+ /usr/lib/qt/mkspecs/features/yacc.prf \
+ /usr/lib/qt/mkspecs/features/lex.prf \
+ ../../../RGBController/RGBController.pro ../../RGBController/controllerwindow.h \
+ ../../RGBController/serial_communication.h ../../RGBController/main.cpp \
+ ../../RGBController/controllerwindow.cpp \
+ ../../RGBController/serial_communication.cpp
+QMAKE_TARGET = RGBController
+DESTDIR =
+TARGET = RGBController
+
+
+first: all
+####### Build rules
+
+$(TARGET): ui_controllerwindow.h $(OBJECTS)
+ $(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS)
+
+Makefile: ../../RGBController/RGBController.pro /usr/lib/qt/mkspecs/linux-g++/qmake.conf /usr/lib/qt/mkspecs/features/spec_pre.prf \
+ /usr/lib/qt/mkspecs/common/unix.conf \
+ /usr/lib/qt/mkspecs/common/linux.conf \
+ /usr/lib/qt/mkspecs/common/sanitize.conf \
+ /usr/lib/qt/mkspecs/common/gcc-base.conf \
+ /usr/lib/qt/mkspecs/common/gcc-base-unix.conf \
+ /usr/lib/qt/mkspecs/common/g++-base.conf \
+ /usr/lib/qt/mkspecs/common/g++-unix.conf \
+ /usr/lib/qt/mkspecs/qconfig.pri \
+ /usr/lib/qt/mkspecs/modules/qt_Attica.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KArchive.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KAuth.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KBookmarks.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCodecs.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCompletion.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KConfigCore.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KConfigGui.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KConfigWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCoreAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCrash.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KDBusAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KDEWebKit.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KEmoticons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KGlobalAccel.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KGuiAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KI18n.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIconThemes.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIOCore.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIOFileWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIOGui.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIOWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KItemModels.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KItemViews.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KJobWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KNotifications.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KNotifyConfig.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KNTLM.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KParts.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KPlotting.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KPty.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KService.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KTextWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KUnitConversion.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KWallet.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KWidgetsAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KWindowSystem.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KXmlGui.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dcore.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dcore_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dinput.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dinput_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dlogic.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dlogic_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dquick.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dquick_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dquickinput.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dquickinput_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dquickrender.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3dquickrender_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3drender.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_3drender_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_bluetooth.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_bluetooth_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_clucene_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_concurrent.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_concurrent_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_core.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_core_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_dbus.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_dbus_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_designer.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_designer_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_designercomponents_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_eglfs_device_lib_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_enginio.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_enginio_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_gui.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_gui_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_help.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_help_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_location.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_location_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_multimedia.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_multimedia_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_network.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_network_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_nfc.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_nfc_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_opengl.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_opengl_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_openglextensions.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_openglextensions_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_platformsupport_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_positioning.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_positioning_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_printsupport.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_printsupport_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_qml.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_qml_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_qmldevtools_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_qmltest.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_qmltest_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_quick.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_quick_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_quickparticles_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_script.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_script_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_scripttools.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_scripttools_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_sensors.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_sensors_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_serialport.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_serialport_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_sql.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_sql_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_svg.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_svg_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_testlib.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_testlib_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_uiplugin.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_uitools.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_uitools_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_waylandclient.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_waylandclient_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webchannel.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webchannel_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webengine.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webengine_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webenginecore.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webenginecore_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webenginecoreheaders_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webenginewidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webenginewidgets_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webkit.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webkit_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_websockets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_websockets_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_widgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_widgets_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_x11extras.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_x11extras_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_xcb_qpa_lib_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_xml.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_xml_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_phonon4qt5.pri \
+ /usr/lib/qt/mkspecs/modules/qt_QGpgme.pri \
+ /usr/lib/qt/mkspecs/modules/qt_Solid.pri \
+ /usr/lib/qt/mkspecs/modules/qt_SonnetCore.pri \
+ /usr/lib/qt/mkspecs/modules/qt_SonnetUi.pri \
+ /usr/lib/qt/mkspecs/features/qt_functions.prf \
+ /usr/lib/qt/mkspecs/features/qt_config.prf \
+ /usr/lib/qt/mkspecs/linux-g++/qmake.conf \
+ /usr/lib/qt/mkspecs/features/spec_post.prf \
+ /usr/lib/qt/mkspecs/features/exclusive_builds.prf \
+ /usr/lib/qt/mkspecs/features/default_pre.prf \
+ /usr/lib/qt/mkspecs/features/resolve_config.prf \
+ /usr/lib/qt/mkspecs/features/default_post.prf \
+ /usr/lib/qt/mkspecs/features/qml_debug.prf \
+ /usr/lib/qt/mkspecs/features/warn_on.prf \
+ /usr/lib/qt/mkspecs/features/qt.prf \
+ /usr/lib/qt/mkspecs/features/resources.prf \
+ /usr/lib/qt/mkspecs/features/moc.prf \
+ /usr/lib/qt/mkspecs/features/unix/opengl.prf \
+ /usr/lib/qt/mkspecs/features/uic.prf \
+ /usr/lib/qt/mkspecs/features/unix/thread.prf \
+ /usr/lib/qt/mkspecs/features/testcase_targets.prf \
+ /usr/lib/qt/mkspecs/features/exceptions.prf \
+ /usr/lib/qt/mkspecs/features/yacc.prf \
+ /usr/lib/qt/mkspecs/features/lex.prf \
+ ../../RGBController/RGBController.pro \
+ /usr/lib/libQt5Widgets.prl \
+ /usr/lib/libQt5Gui.prl \
+ /usr/lib/libQt5SerialPort.prl \
+ /usr/lib/libQt5Network.prl \
+ /usr/lib/libQt5Core.prl
+ $(QMAKE) -spec linux-g++ CONFIG+=debug CONFIG+=qml_debug -o Makefile ../../RGBController/RGBController.pro
+/usr/lib/qt/mkspecs/features/spec_pre.prf:
+/usr/lib/qt/mkspecs/common/unix.conf:
+/usr/lib/qt/mkspecs/common/linux.conf:
+/usr/lib/qt/mkspecs/common/sanitize.conf:
+/usr/lib/qt/mkspecs/common/gcc-base.conf:
+/usr/lib/qt/mkspecs/common/gcc-base-unix.conf:
+/usr/lib/qt/mkspecs/common/g++-base.conf:
+/usr/lib/qt/mkspecs/common/g++-unix.conf:
+/usr/lib/qt/mkspecs/qconfig.pri:
+/usr/lib/qt/mkspecs/modules/qt_Attica.pri:
+/usr/lib/qt/mkspecs/modules/qt_KArchive.pri:
+/usr/lib/qt/mkspecs/modules/qt_KAuth.pri:
+/usr/lib/qt/mkspecs/modules/qt_KBookmarks.pri:
+/usr/lib/qt/mkspecs/modules/qt_KCodecs.pri:
+/usr/lib/qt/mkspecs/modules/qt_KCompletion.pri:
+/usr/lib/qt/mkspecs/modules/qt_KConfigCore.pri:
+/usr/lib/qt/mkspecs/modules/qt_KConfigGui.pri:
+/usr/lib/qt/mkspecs/modules/qt_KConfigWidgets.pri:
+/usr/lib/qt/mkspecs/modules/qt_KCoreAddons.pri:
+/usr/lib/qt/mkspecs/modules/qt_KCrash.pri:
+/usr/lib/qt/mkspecs/modules/qt_KDBusAddons.pri:
+/usr/lib/qt/mkspecs/modules/qt_KDEWebKit.pri:
+/usr/lib/qt/mkspecs/modules/qt_KEmoticons.pri:
+/usr/lib/qt/mkspecs/modules/qt_KGlobalAccel.pri:
+/usr/lib/qt/mkspecs/modules/qt_KGuiAddons.pri:
+/usr/lib/qt/mkspecs/modules/qt_KI18n.pri:
+/usr/lib/qt/mkspecs/modules/qt_KIconThemes.pri:
+/usr/lib/qt/mkspecs/modules/qt_KIOCore.pri:
+/usr/lib/qt/mkspecs/modules/qt_KIOFileWidgets.pri:
+/usr/lib/qt/mkspecs/modules/qt_KIOGui.pri:
+/usr/lib/qt/mkspecs/modules/qt_KIOWidgets.pri:
+/usr/lib/qt/mkspecs/modules/qt_KItemModels.pri:
+/usr/lib/qt/mkspecs/modules/qt_KItemViews.pri:
+/usr/lib/qt/mkspecs/modules/qt_KJobWidgets.pri:
+/usr/lib/qt/mkspecs/modules/qt_KNotifications.pri:
+/usr/lib/qt/mkspecs/modules/qt_KNotifyConfig.pri:
+/usr/lib/qt/mkspecs/modules/qt_KNTLM.pri:
+/usr/lib/qt/mkspecs/modules/qt_KParts.pri:
+/usr/lib/qt/mkspecs/modules/qt_KPlotting.pri:
+/usr/lib/qt/mkspecs/modules/qt_KPty.pri:
+/usr/lib/qt/mkspecs/modules/qt_KService.pri:
+/usr/lib/qt/mkspecs/modules/qt_KTextWidgets.pri:
+/usr/lib/qt/mkspecs/modules/qt_KUnitConversion.pri:
+/usr/lib/qt/mkspecs/modules/qt_KWallet.pri:
+/usr/lib/qt/mkspecs/modules/qt_KWidgetsAddons.pri:
+/usr/lib/qt/mkspecs/modules/qt_KWindowSystem.pri:
+/usr/lib/qt/mkspecs/modules/qt_KXmlGui.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_3dcore.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_3dcore_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_3dinput.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_3dinput_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_3dlogic.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_3dlogic_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_3dquick.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_3dquick_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_3dquickinput.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_3dquickinput_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_3dquickrender.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_3dquickrender_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_3drender.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_3drender_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_bluetooth.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_bluetooth_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_clucene_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_concurrent.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_concurrent_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_core.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_core_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_dbus.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_dbus_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_designer.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_designer_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_designercomponents_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_eglfs_device_lib_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_enginio.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_enginio_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_gui.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_gui_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_help.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_help_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_location.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_location_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_multimedia.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_multimedia_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_network.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_network_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_nfc.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_nfc_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_opengl.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_opengl_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_platformsupport_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_positioning.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_positioning_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_printsupport.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_printsupport_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_qml.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_qml_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_qmldevtools_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_qmltest.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_qmltest_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_quick.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_quick_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_quickparticles_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_script.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_script_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_scripttools.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_scripttools_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_sensors.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_sensors_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_serialport.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_serialport_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_sql.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_sql_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_svg.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_svg_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_testlib.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_testlib_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_uiplugin.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_uitools.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_uitools_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_waylandclient.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_waylandclient_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_webchannel.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_webchannel_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_webengine.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_webengine_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_webenginecore.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_webenginecore_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_webenginecoreheaders_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_webenginewidgets.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_webenginewidgets_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_webkit.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_webkit_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_websockets.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_websockets_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_widgets.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_widgets_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_x11extras.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_x11extras_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_xcb_qpa_lib_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_xml.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_xml_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_phonon4qt5.pri:
+/usr/lib/qt/mkspecs/modules/qt_QGpgme.pri:
+/usr/lib/qt/mkspecs/modules/qt_Solid.pri:
+/usr/lib/qt/mkspecs/modules/qt_SonnetCore.pri:
+/usr/lib/qt/mkspecs/modules/qt_SonnetUi.pri:
+/usr/lib/qt/mkspecs/features/qt_functions.prf:
+/usr/lib/qt/mkspecs/features/qt_config.prf:
+/usr/lib/qt/mkspecs/linux-g++/qmake.conf:
+/usr/lib/qt/mkspecs/features/spec_post.prf:
+/usr/lib/qt/mkspecs/features/exclusive_builds.prf:
+/usr/lib/qt/mkspecs/features/default_pre.prf:
+/usr/lib/qt/mkspecs/features/resolve_config.prf:
+/usr/lib/qt/mkspecs/features/default_post.prf:
+/usr/lib/qt/mkspecs/features/qml_debug.prf:
+/usr/lib/qt/mkspecs/features/warn_on.prf:
+/usr/lib/qt/mkspecs/features/qt.prf:
+/usr/lib/qt/mkspecs/features/resources.prf:
+/usr/lib/qt/mkspecs/features/moc.prf:
+/usr/lib/qt/mkspecs/features/unix/opengl.prf:
+/usr/lib/qt/mkspecs/features/uic.prf:
+/usr/lib/qt/mkspecs/features/unix/thread.prf:
+/usr/lib/qt/mkspecs/features/testcase_targets.prf:
+/usr/lib/qt/mkspecs/features/exceptions.prf:
+/usr/lib/qt/mkspecs/features/yacc.prf:
+/usr/lib/qt/mkspecs/features/lex.prf:
+../../RGBController/RGBController.pro:
+/usr/lib/libQt5Widgets.prl:
+/usr/lib/libQt5Gui.prl:
+/usr/lib/libQt5SerialPort.prl:
+/usr/lib/libQt5Network.prl:
+/usr/lib/libQt5Core.prl:
+qmake: FORCE
+ @$(QMAKE) -spec linux-g++ CONFIG+=debug CONFIG+=qml_debug -o Makefile ../../RGBController/RGBController.pro
+
+qmake_all: FORCE
+
+
+all: Makefile $(TARGET)
+
+dist: distdir FORCE
+ (cd `dirname $(DISTDIR)` && $(TAR) $(DISTNAME).tar $(DISTNAME) && $(COMPRESS) $(DISTNAME).tar) && $(MOVE) `dirname $(DISTDIR)`/$(DISTNAME).tar.gz . && $(DEL_FILE) -r $(DISTDIR)
+
+distdir: FORCE
+ @test -d $(DISTDIR) || mkdir -p $(DISTDIR)
+ $(COPY_FILE) --parents $(DIST) $(DISTDIR)/
+ $(COPY_FILE) --parents ../../RGBController/controllerwindow.h ../../RGBController/serial_communication.h $(DISTDIR)/
+ $(COPY_FILE) --parents ../../RGBController/main.cpp ../../RGBController/controllerwindow.cpp ../../RGBController/serial_communication.cpp $(DISTDIR)/
+ $(COPY_FILE) --parents ../../RGBController/controllerwindow.ui $(DISTDIR)/
+
+
+clean: compiler_clean
+ -$(DEL_FILE) $(OBJECTS)
+ -$(DEL_FILE) *~ core *.core
+
+
+distclean: clean
+ -$(DEL_FILE) $(TARGET)
+ -$(DEL_FILE) Makefile
+
+
+####### Sub-libraries
+
+mocclean: compiler_moc_header_clean compiler_moc_source_clean
+
+mocables: compiler_moc_header_make_all compiler_moc_source_make_all
+
+check: first
+
+compiler_rcc_make_all:
+compiler_rcc_clean:
+compiler_moc_header_make_all: moc_controllerwindow.cpp
+compiler_moc_header_clean:
+ -$(DEL_FILE) moc_controllerwindow.cpp
+moc_controllerwindow.cpp: ../../RGBController/serial_communication.h \
+ ../../RGBController/controllerwindow.h
+ /usr/lib/qt/bin/moc $(DEFINES) -I/usr/lib/qt/mkspecs/linux-g++ -I'/home/daniel_j/documents/school/2016 research project/RGBController/qt/RGBController' -I/usr/include/qt -I/usr/include/qt/QtWidgets -I/usr/include/qt/QtGui -I/usr/include/qt/QtSerialPort -I/usr/include/qt/QtNetwork -I/usr/include/qt/QtCore -I. -I/usr/include/c++/5.3.0 -I/usr/include/c++/5.3.0/x86_64-unknown-linux-gnu -I/usr/include/c++/5.3.0/backward -I/usr/lib/gcc/x86_64-unknown-linux-gnu/5.3.0/include -I/usr/local/include -I/usr/lib/gcc/x86_64-unknown-linux-gnu/5.3.0/include-fixed -I/usr/include ../../RGBController/controllerwindow.h -o moc_controllerwindow.cpp
+
+compiler_moc_source_make_all:
+compiler_moc_source_clean:
+compiler_uic_make_all: ui_controllerwindow.h
+compiler_uic_clean:
+ -$(DEL_FILE) ui_controllerwindow.h
+ui_controllerwindow.h: ../../RGBController/controllerwindow.ui
+ /usr/lib/qt/bin/uic ../../RGBController/controllerwindow.ui -o ui_controllerwindow.h
+
+compiler_yacc_decl_make_all:
+compiler_yacc_decl_clean:
+compiler_yacc_impl_make_all:
+compiler_yacc_impl_clean:
+compiler_lex_make_all:
+compiler_lex_clean:
+compiler_clean: compiler_moc_header_clean compiler_uic_clean
+
+####### Compile
+
+main.o: ../../RGBController/main.cpp ../../RGBController/controllerwindow.h \
+ ../../RGBController/serial_communication.h
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o main.o ../../RGBController/main.cpp
+
+controllerwindow.o: ../../RGBController/controllerwindow.cpp ../../RGBController/controllerwindow.h \
+ ../../RGBController/serial_communication.h \
+ ui_controllerwindow.h
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o controllerwindow.o ../../RGBController/controllerwindow.cpp
+
+serial_communication.o: ../../RGBController/serial_communication.cpp ../../RGBController/serial_communication.h
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o serial_communication.o ../../RGBController/serial_communication.cpp
+
+moc_controllerwindow.o: moc_controllerwindow.cpp
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o moc_controllerwindow.o moc_controllerwindow.cpp
+
+####### Install
+
+install: FORCE
+
+uninstall: FORCE
+
+FORCE:
+
diff --git a/qt/build/degub/RGBController b/qt/build/degub/RGBController
new file mode 100755
index 0000000..d3016b1
--- /dev/null
+++ b/qt/build/degub/RGBController
Binary files differ
diff --git a/qt/build/degub/controllerwindow.o b/qt/build/degub/controllerwindow.o
new file mode 100644
index 0000000..d88e786
--- /dev/null
+++ b/qt/build/degub/controllerwindow.o
Binary files differ
diff --git a/qt/build/degub/main.o b/qt/build/degub/main.o
new file mode 100644
index 0000000..68c328f
--- /dev/null
+++ b/qt/build/degub/main.o
Binary files differ
diff --git a/qt/build/degub/moc_controllerwindow.cpp b/qt/build/degub/moc_controllerwindow.cpp
new file mode 100755
index 0000000..6541f0e
--- /dev/null
+++ b/qt/build/degub/moc_controllerwindow.cpp
@@ -0,0 +1,171 @@
+/****************************************************************************
+** Meta object code from reading C++ file 'controllerwindow.h'
+**
+** Created by: The Qt Meta Object Compiler version 67 (Qt 5.6.0)
+**
+** WARNING! All changes made in this file will be lost!
+*****************************************************************************/
+
+#include "../../RGBController/controllerwindow.h"
+#include <QtCore/qbytearray.h>
+#include <QtCore/qmetatype.h>
+#if !defined(Q_MOC_OUTPUT_REVISION)
+#error "The header file 'controllerwindow.h' doesn't include <QObject>."
+#elif Q_MOC_OUTPUT_REVISION != 67
+#error "This file was generated using the moc from 5.6.0. It"
+#error "cannot be used with the include files from this version of Qt."
+#error "(The moc has changed too much.)"
+#endif
+
+QT_BEGIN_MOC_NAMESPACE
+struct qt_meta_stringdata_controllerWindow_t {
+ QByteArrayData data[17];
+ char stringdata0[383];
+};
+#define QT_MOC_LITERAL(idx, ofs, len) \
+ Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
+ qptrdiff(offsetof(qt_meta_stringdata_controllerWindow_t, stringdata0) + ofs \
+ - idx * sizeof(QByteArrayData)) \
+ )
+static const qt_meta_stringdata_controllerWindow_t qt_meta_stringdata_controllerWindow = {
+ {
+QT_MOC_LITERAL(0, 0, 16), // "controllerWindow"
+QT_MOC_LITERAL(1, 17, 25), // "on_connect_button_clicked"
+QT_MOC_LITERAL(2, 43, 0), // ""
+QT_MOC_LITERAL(3, 44, 28), // "on_disconnect_button_clicked"
+QT_MOC_LITERAL(4, 73, 30), // "on_refresh_port_button_clicked"
+QT_MOC_LITERAL(5, 104, 31), // "on_reload_preset_button_clicked"
+QT_MOC_LITERAL(6, 136, 24), // "on_r_slider_valueChanged"
+QT_MOC_LITERAL(7, 161, 5), // "value"
+QT_MOC_LITERAL(8, 167, 24), // "on_g_slider_valueChanged"
+QT_MOC_LITERAL(9, 192, 24), // "on_b_slider_valueChanged"
+QT_MOC_LITERAL(10, 217, 21), // "on_red_button_clicked"
+QT_MOC_LITERAL(11, 239, 23), // "on_green_button_clicked"
+QT_MOC_LITERAL(12, 263, 22), // "on_blue_button_clicked"
+QT_MOC_LITERAL(13, 286, 21), // "on_off_button_clicked"
+QT_MOC_LITERAL(14, 308, 28), // "on_set_preset_button_clicked"
+QT_MOC_LITERAL(15, 337, 39), // "on_presets_dropdown_currentIn..."
+QT_MOC_LITERAL(16, 377, 5) // "index"
+
+ },
+ "controllerWindow\0on_connect_button_clicked\0"
+ "\0on_disconnect_button_clicked\0"
+ "on_refresh_port_button_clicked\0"
+ "on_reload_preset_button_clicked\0"
+ "on_r_slider_valueChanged\0value\0"
+ "on_g_slider_valueChanged\0"
+ "on_b_slider_valueChanged\0on_red_button_clicked\0"
+ "on_green_button_clicked\0on_blue_button_clicked\0"
+ "on_off_button_clicked\0"
+ "on_set_preset_button_clicked\0"
+ "on_presets_dropdown_currentIndexChanged\0"
+ "index"
+};
+#undef QT_MOC_LITERAL
+
+static const uint qt_meta_data_controllerWindow[] = {
+
+ // content:
+ 7, // revision
+ 0, // classname
+ 0, 0, // classinfo
+ 13, 14, // methods
+ 0, 0, // properties
+ 0, 0, // enums/sets
+ 0, 0, // constructors
+ 0, // flags
+ 0, // signalCount
+
+ // slots: name, argc, parameters, tag, flags
+ 1, 0, 79, 2, 0x08 /* Private */,
+ 3, 0, 80, 2, 0x08 /* Private */,
+ 4, 0, 81, 2, 0x08 /* Private */,
+ 5, 0, 82, 2, 0x08 /* Private */,
+ 6, 1, 83, 2, 0x08 /* Private */,
+ 8, 1, 86, 2, 0x08 /* Private */,
+ 9, 1, 89, 2, 0x08 /* Private */,
+ 10, 0, 92, 2, 0x08 /* Private */,
+ 11, 0, 93, 2, 0x08 /* Private */,
+ 12, 0, 94, 2, 0x08 /* Private */,
+ 13, 0, 95, 2, 0x08 /* Private */,
+ 14, 0, 96, 2, 0x08 /* Private */,
+ 15, 1, 97, 2, 0x08 /* Private */,
+
+ // slots: parameters
+ QMetaType::Void,
+ QMetaType::Void,
+ QMetaType::Void,
+ QMetaType::Void,
+ QMetaType::Void, QMetaType::Int, 7,
+ QMetaType::Void, QMetaType::Int, 7,
+ QMetaType::Void, QMetaType::Int, 7,
+ QMetaType::Void,
+ QMetaType::Void,
+ QMetaType::Void,
+ QMetaType::Void,
+ QMetaType::Void,
+ QMetaType::Void, QMetaType::Int, 16,
+
+ 0 // eod
+};
+
+void controllerWindow::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
+{
+ if (_c == QMetaObject::InvokeMetaMethod) {
+ controllerWindow *_t = static_cast<controllerWindow *>(_o);
+ Q_UNUSED(_t)
+ switch (_id) {
+ case 0: _t->on_connect_button_clicked(); break;
+ case 1: _t->on_disconnect_button_clicked(); break;
+ case 2: _t->on_refresh_port_button_clicked(); break;
+ case 3: _t->on_reload_preset_button_clicked(); break;
+ case 4: _t->on_r_slider_valueChanged((*reinterpret_cast< int(*)>(_a[1]))); break;
+ case 5: _t->on_g_slider_valueChanged((*reinterpret_cast< int(*)>(_a[1]))); break;
+ case 6: _t->on_b_slider_valueChanged((*reinterpret_cast< int(*)>(_a[1]))); break;
+ case 7: _t->on_red_button_clicked(); break;
+ case 8: _t->on_green_button_clicked(); break;
+ case 9: _t->on_blue_button_clicked(); break;
+ case 10: _t->on_off_button_clicked(); break;
+ case 11: _t->on_set_preset_button_clicked(); break;
+ case 12: _t->on_presets_dropdown_currentIndexChanged((*reinterpret_cast< int(*)>(_a[1]))); break;
+ default: ;
+ }
+ }
+}
+
+const QMetaObject controllerWindow::staticMetaObject = {
+ { &QMainWindow::staticMetaObject, qt_meta_stringdata_controllerWindow.data,
+ qt_meta_data_controllerWindow, qt_static_metacall, Q_NULLPTR, Q_NULLPTR}
+};
+
+
+const QMetaObject *controllerWindow::metaObject() const
+{
+ return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
+}
+
+void *controllerWindow::qt_metacast(const char *_clname)
+{
+ if (!_clname) return Q_NULLPTR;
+ if (!strcmp(_clname, qt_meta_stringdata_controllerWindow.stringdata0))
+ return static_cast<void*>(const_cast< controllerWindow*>(this));
+ return QMainWindow::qt_metacast(_clname);
+}
+
+int controllerWindow::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
+{
+ _id = QMainWindow::qt_metacall(_c, _id, _a);
+ if (_id < 0)
+ return _id;
+ if (_c == QMetaObject::InvokeMetaMethod) {
+ if (_id < 13)
+ qt_static_metacall(this, _c, _id, _a);
+ _id -= 13;
+ } else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
+ if (_id < 13)
+ *reinterpret_cast<int*>(_a[0]) = -1;
+ _id -= 13;
+ }
+ return _id;
+}
+QT_END_MOC_NAMESPACE
diff --git a/qt/build/degub/moc_controllerwindow.o b/qt/build/degub/moc_controllerwindow.o
new file mode 100644
index 0000000..f716615
--- /dev/null
+++ b/qt/build/degub/moc_controllerwindow.o
Binary files differ
diff --git a/qt/build/degub/presets.txt b/qt/build/degub/presets.txt
new file mode 100644
index 0000000..776a532
--- /dev/null
+++ b/qt/build/degub/presets.txt
@@ -0,0 +1,12 @@
+Only add things to this file if you know what you are doing.
+Don't be dumb.
+
+The program only cares for lines here if they contain the equals symbol.
+Everything else is ignored - if you add an equals symbol to this file, you will most likely crash it.
+
+white=255,255,255
+purple=255,0,255
+light purple=255,55,255
+yellow=255,83,0
+light blue=0,255,255
+
diff --git a/qt/build/degub/serial_communication.o b/qt/build/degub/serial_communication.o
new file mode 100644
index 0000000..f00df38
--- /dev/null
+++ b/qt/build/degub/serial_communication.o
Binary files differ
diff --git a/qt/build/degub/ui_controllerwindow.h b/qt/build/degub/ui_controllerwindow.h
new file mode 100755
index 0000000..cebe2ce
--- /dev/null
+++ b/qt/build/degub/ui_controllerwindow.h
@@ -0,0 +1,219 @@
+/********************************************************************************
+** Form generated from reading UI file 'controllerwindow.ui'
+**
+** Created by: Qt User Interface Compiler version 5.6.0
+**
+** WARNING! All changes made in this file will be lost when recompiling UI file!
+********************************************************************************/
+
+#ifndef UI_CONTROLLERWINDOW_H
+#define UI_CONTROLLERWINDOW_H
+
+#include <QtCore/QVariant>
+#include <QtWidgets/QAction>
+#include <QtWidgets/QApplication>
+#include <QtWidgets/QButtonGroup>
+#include <QtWidgets/QComboBox>
+#include <QtWidgets/QFormLayout>
+#include <QtWidgets/QHeaderView>
+#include <QtWidgets/QLabel>
+#include <QtWidgets/QMainWindow>
+#include <QtWidgets/QPushButton>
+#include <QtWidgets/QSlider>
+#include <QtWidgets/QTextEdit>
+#include <QtWidgets/QWidget>
+
+QT_BEGIN_NAMESPACE
+
+class Ui_controllerWindow
+{
+public:
+ QWidget *centralWidget;
+ QFormLayout *formLayout;
+ QLabel *status_label;
+ QLabel *arduino_status_label;
+ QLabel *arduino_port_label;
+ QComboBox *arduino_port_dropdown;
+ QPushButton *refresh_port_button;
+ QPushButton *connect_button;
+ QPushButton *disconnect_button;
+ QLabel *rgb_label;
+ QPushButton *red_button;
+ QSlider *r_slider;
+ QSlider *g_slider;
+ QSlider *b_slider;
+ QPushButton *green_button;
+ QPushButton *blue_button;
+ QLabel *presets_label;
+ QPushButton *off_button;
+ QLabel *info_log_label;
+ QPushButton *reload_preset_button;
+ QPushButton *set_preset_button;
+ QComboBox *presets_dropdown;
+ QTextEdit *info_log_textarea;
+
+ void setupUi(QMainWindow *controllerWindow)
+ {
+ if (controllerWindow->objectName().isEmpty())
+ controllerWindow->setObjectName(QStringLiteral("controllerWindow"));
+ controllerWindow->resize(229, 394);
+ centralWidget = new QWidget(controllerWindow);
+ centralWidget->setObjectName(QStringLiteral("centralWidget"));
+ formLayout = new QFormLayout(centralWidget);
+ formLayout->setSpacing(6);
+ formLayout->setContentsMargins(11, 11, 11, 11);
+ formLayout->setObjectName(QStringLiteral("formLayout"));
+ status_label = new QLabel(centralWidget);
+ status_label->setObjectName(QStringLiteral("status_label"));
+
+ formLayout->setWidget(0, QFormLayout::LabelRole, status_label);
+
+ arduino_status_label = new QLabel(centralWidget);
+ arduino_status_label->setObjectName(QStringLiteral("arduino_status_label"));
+
+ formLayout->setWidget(0, QFormLayout::FieldRole, arduino_status_label);
+
+ arduino_port_label = new QLabel(centralWidget);
+ arduino_port_label->setObjectName(QStringLiteral("arduino_port_label"));
+ arduino_port_label->setMinimumSize(QSize(120, 0));
+
+ formLayout->setWidget(1, QFormLayout::LabelRole, arduino_port_label);
+
+ arduino_port_dropdown = new QComboBox(centralWidget);
+ arduino_port_dropdown->setObjectName(QStringLiteral("arduino_port_dropdown"));
+
+ formLayout->setWidget(1, QFormLayout::FieldRole, arduino_port_dropdown);
+
+ refresh_port_button = new QPushButton(centralWidget);
+ refresh_port_button->setObjectName(QStringLiteral("refresh_port_button"));
+
+ formLayout->setWidget(2, QFormLayout::FieldRole, refresh_port_button);
+
+ connect_button = new QPushButton(centralWidget);
+ connect_button->setObjectName(QStringLiteral("connect_button"));
+
+ formLayout->setWidget(3, QFormLayout::LabelRole, connect_button);
+
+ disconnect_button = new QPushButton(centralWidget);
+ disconnect_button->setObjectName(QStringLiteral("disconnect_button"));
+
+ formLayout->setWidget(3, QFormLayout::FieldRole, disconnect_button);
+
+ rgb_label = new QLabel(centralWidget);
+ rgb_label->setObjectName(QStringLiteral("rgb_label"));
+
+ formLayout->setWidget(4, QFormLayout::LabelRole, rgb_label);
+
+ red_button = new QPushButton(centralWidget);
+ red_button->setObjectName(QStringLiteral("red_button"));
+
+ formLayout->setWidget(5, QFormLayout::FieldRole, red_button);
+
+ r_slider = new QSlider(centralWidget);
+ r_slider->setObjectName(QStringLiteral("r_slider"));
+ r_slider->setMinimumSize(QSize(120, 0));
+ r_slider->setMaximumSize(QSize(120, 16777215));
+ r_slider->setMaximum(255);
+ r_slider->setOrientation(Qt::Horizontal);
+
+ formLayout->setWidget(5, QFormLayout::LabelRole, r_slider);
+
+ g_slider = new QSlider(centralWidget);
+ g_slider->setObjectName(QStringLiteral("g_slider"));
+ g_slider->setMinimumSize(QSize(120, 0));
+ g_slider->setMaximumSize(QSize(120, 16777215));
+ g_slider->setMaximum(255);
+ g_slider->setOrientation(Qt::Horizontal);
+
+ formLayout->setWidget(6, QFormLayout::LabelRole, g_slider);
+
+ b_slider = new QSlider(centralWidget);
+ b_slider->setObjectName(QStringLiteral("b_slider"));
+ b_slider->setMinimumSize(QSize(120, 0));
+ b_slider->setMaximumSize(QSize(120, 16777215));
+ b_slider->setMaximum(255);
+ b_slider->setOrientation(Qt::Horizontal);
+
+ formLayout->setWidget(7, QFormLayout::LabelRole, b_slider);
+
+ green_button = new QPushButton(centralWidget);
+ green_button->setObjectName(QStringLiteral("green_button"));
+
+ formLayout->setWidget(6, QFormLayout::FieldRole, green_button);
+
+ blue_button = new QPushButton(centralWidget);
+ blue_button->setObjectName(QStringLiteral("blue_button"));
+
+ formLayout->setWidget(7, QFormLayout::FieldRole, blue_button);
+
+ presets_label = new QLabel(centralWidget);
+ presets_label->setObjectName(QStringLiteral("presets_label"));
+
+ formLayout->setWidget(9, QFormLayout::LabelRole, presets_label);
+
+ off_button = new QPushButton(centralWidget);
+ off_button->setObjectName(QStringLiteral("off_button"));
+
+ formLayout->setWidget(8, QFormLayout::FieldRole, off_button);
+
+ info_log_label = new QLabel(centralWidget);
+ info_log_label->setObjectName(QStringLiteral("info_log_label"));
+
+ formLayout->setWidget(12, QFormLayout::LabelRole, info_log_label);
+
+ reload_preset_button = new QPushButton(centralWidget);
+ reload_preset_button->setObjectName(QStringLiteral("reload_preset_button"));
+
+ formLayout->setWidget(11, QFormLayout::FieldRole, reload_preset_button);
+
+ set_preset_button = new QPushButton(centralWidget);
+ set_preset_button->setObjectName(QStringLiteral("set_preset_button"));
+
+ formLayout->setWidget(10, QFormLayout::FieldRole, set_preset_button);
+
+ presets_dropdown = new QComboBox(centralWidget);
+ presets_dropdown->setObjectName(QStringLiteral("presets_dropdown"));
+
+ formLayout->setWidget(10, QFormLayout::LabelRole, presets_dropdown);
+
+ info_log_textarea = new QTextEdit(centralWidget);
+ info_log_textarea->setObjectName(QStringLiteral("info_log_textarea"));
+
+ formLayout->setWidget(13, QFormLayout::SpanningRole, info_log_textarea);
+
+ controllerWindow->setCentralWidget(centralWidget);
+
+ retranslateUi(controllerWindow);
+
+ QMetaObject::connectSlotsByName(controllerWindow);
+ } // setupUi
+
+ void retranslateUi(QMainWindow *controllerWindow)
+ {
+ controllerWindow->setWindowTitle(QApplication::translate("controllerWindow", "RGB Controller", 0));
+ status_label->setText(QApplication::translate("controllerWindow", "Status", 0));
+ arduino_status_label->setText(QApplication::translate("controllerWindow", "<font color = red>Disconnected</font>", 0));
+ arduino_port_label->setText(QApplication::translate("controllerWindow", "Arduino port", 0));
+ refresh_port_button->setText(QApplication::translate("controllerWindow", "Refresh", 0));
+ connect_button->setText(QApplication::translate("controllerWindow", "Connect", 0));
+ disconnect_button->setText(QApplication::translate("controllerWindow", "Disconnect", 0));
+ rgb_label->setText(QApplication::translate("controllerWindow", "RGB colors", 0));
+ red_button->setText(QApplication::translate("controllerWindow", "Red", 0));
+ green_button->setText(QApplication::translate("controllerWindow", "Green", 0));
+ blue_button->setText(QApplication::translate("controllerWindow", "Blue", 0));
+ presets_label->setText(QApplication::translate("controllerWindow", "Presets", 0));
+ off_button->setText(QApplication::translate("controllerWindow", "Off", 0));
+ info_log_label->setText(QApplication::translate("controllerWindow", "Information log", 0));
+ reload_preset_button->setText(QApplication::translate("controllerWindow", "Reload", 0));
+ set_preset_button->setText(QApplication::translate("controllerWindow", "Set", 0));
+ } // retranslateUi
+
+};
+
+namespace Ui {
+ class controllerWindow: public Ui_controllerWindow {};
+} // namespace Ui
+
+QT_END_NAMESPACE
+
+#endif // UI_CONTROLLERWINDOW_H