diff --git a/nymea-app/images.qrc b/nymea-app/images.qrc
index 3455ce76..c5a12306 100644
--- a/nymea-app/images.qrc
+++ b/nymea-app/images.qrc
@@ -215,5 +215,6 @@
ui/images/view-grid-symbolic.svg
ui/images/script.svg
ui/images/save.svg
+ ui/images/edit-clear.svg
diff --git a/nymea-app/ui/images/edit-clear.svg b/nymea-app/ui/images/edit-clear.svg
new file mode 100644
index 00000000..6d6d084f
--- /dev/null
+++ b/nymea-app/ui/images/edit-clear.svg
@@ -0,0 +1,182 @@
+
+
+
+
diff --git a/nymea-app/ui/magic/ScriptEditor.qml b/nymea-app/ui/magic/ScriptEditor.qml
index 271e0fb3..9eb5f56f 100644
--- a/nymea-app/ui/magic/ScriptEditor.qml
+++ b/nymea-app/ui/magic/ScriptEditor.qml
@@ -301,7 +301,11 @@ Page {
id: errorsPane
anchors { fill: parent; margins: app.margins / 2 }
property string title: qsTr("Errors")
+ property bool clearEnabled: errorModel.count > 0
signal raise()
+ function clear() {
+ errorModel.clear();
+ }
ListView {
id: errorListView
@@ -345,11 +349,20 @@ Page {
id: consolePane
anchors {fill: parent; margins: app.margins/ 2 }
property string title: qsTr("Console")
+ property bool clearEnabled: false
signal raise()
+ function clear() {
+ consoleOutput.text = "";
+ clearEnabled = false;
+ }
TextArea {
id: consoleOutput
- onTextChanged: consolePane.raise();
+ onTextChanged: {
+ consolePane.raise();
+ print("text:", text)
+ consolePane.clearEnabled = true
+ }
selectByMouse: true
font: scriptEdit.font
textFormat: Qt.RichText
diff --git a/nymea-app/ui/magic/scripting/EditorPane.qml b/nymea-app/ui/magic/scripting/EditorPane.qml
index 4ff8ebd8..5bb5c92e 100644
--- a/nymea-app/ui/magic/scripting/EditorPane.qml
+++ b/nymea-app/ui/magic/scripting/EditorPane.qml
@@ -69,10 +69,24 @@ Item {
Layout.fillWidth: true
}
+ ColorIcon {
+ name: "../images/edit-clear.svg"
+ enabled: contentContainer.data[panelTabs.currentIndex].clearEnabled
+ color: enabled ? app.accentColor : keyColor
+ Layout.preferredHeight: app.iconSize / 2
+ Layout.preferredWidth: height
+ MouseArea {
+ anchors.fill: parent
+ anchors.margins: -5
+ onClicked: contentContainer.data[panelTabs.currentIndex].clear()
+ }
+ }
+
ColorIcon {
name: pane.shown ? "../images/down.svg" : "../images/up.svg"
Layout.preferredHeight: app.iconSize / 2
Layout.preferredWidth: height
+ color: app.accentColor
MouseArea {
anchors.fill: parent
anchors.margins: -5