diff --git a/sources/desktop-panel/package/contents/config/main.xml b/sources/desktop-panel/package/contents/config/main.xml index 03a71b6..606d7ba 100644 --- a/sources/desktop-panel/package/contents/config/main.xml +++ b/sources/desktop-panel/package/contents/config/main.xml @@ -60,6 +60,12 @@ normal + + normal + + + #000000 + center @@ -79,6 +85,12 @@ normal + + normal + + + #000000 + diff --git a/sources/desktop-panel/package/contents/ui/activeapp.qml b/sources/desktop-panel/package/contents/ui/activeapp.qml index 865352d..58ed75a 100644 --- a/sources/desktop-panel/package/contents/ui/activeapp.qml +++ b/sources/desktop-panel/package/contents/ui/activeapp.qml @@ -49,6 +49,8 @@ Item { property string cfg_currentFontWeight: fontWeight.currentText property string cfg_currentFontStyle: fontStyle.currentText property alias cfg_currentFontColor: selectColor.text + property alias cfg_currentTextStyleColor: selectStyleColor.text + property string cfg_currentTextStyle: textStyle.currentText Column { @@ -204,6 +206,74 @@ Item { onClicked: colorDialog.visible = true } } + + Row { + height: implicitHeight + width: parent.width + QtControls.Label { + height: parent.height + width: parent.width / 3 + horizontalAlignment: Text.AlignRight + verticalAlignment: Text.AlignVCenter + text: i18n("Style") + } + QtControls.ComboBox { + id: textStyle + width: parent.width * 2 / 3 + textRole: "label" + model: [ + { + 'label': i18n("normal"), + 'name': "normal" + }, + { + 'label': i18n("outline"), + 'name': "outline" + }, + { + 'label': i18n("raised"), + 'name': "raised" + }, + { + 'label': i18n("sunken"), + 'name': "sunken" + } + ] + onCurrentIndexChanged: cfg_currentTextStyle = model[currentIndex]["name"] + Component.onCompleted: { + if (debug) console.debug() + for (var i = 0; i < model.length; i++) { + if (model[i]["name"] == plasmoid.configuration.currentTextStyle) { + if (debug) console.info("Found", model[i]["name"], "on", i) + textStyle.currentIndex = i + } + } + } + } + } + + Row { + height: implicitHeight + width: parent.width + QtControls.Label { + height: parent.height + width: parent.width / 3 + horizontalAlignment: Text.AlignRight + verticalAlignment: Text.AlignVCenter + text: i18n("Style color") + } + QtControls.Button { + id: selectStyleColor + width: parent.width * 2 / 3 + style: QtStyles.ButtonStyle { + background: Rectangle { + color: plasmoid.configuration.currentTextStyleColor + } + } + text: plasmoid.configuration.currentTextStyleColor + onClicked: textStyleColorDialog.visible = true + } + } } QtDialogs.ColorDialog { @@ -213,6 +283,13 @@ Item { onAccepted: selectColor.text = colorDialog.color } + QtDialogs.ColorDialog { + id: textStyleColorDialog + title: i18n("Select a color") + color: selectStyleColor.text + onAccepted: selectStyleColor.text = textStyleColorDialog.color + } + QtDialogs.FontDialog { id: fontDialog title: i18n("Select a font") diff --git a/sources/desktop-panel/package/contents/ui/general.qml b/sources/desktop-panel/package/contents/ui/general.qml index dc26a78..42cd857 100644 --- a/sources/desktop-panel/package/contents/ui/general.qml +++ b/sources/desktop-panel/package/contents/ui/general.qml @@ -33,4 +33,10 @@ QtObject { "right": Text.AlignRight, "justify": Text.AlignJustify } + property variant textStyle: { + "normal": Text.Normal, + "outline": Text.Outline, + "raised": Text.Raised, + "sunken": Text.Sunken + } } diff --git a/sources/desktop-panel/package/contents/ui/inactiveapp.qml b/sources/desktop-panel/package/contents/ui/inactiveapp.qml index 391240a..cc8b171 100644 --- a/sources/desktop-panel/package/contents/ui/inactiveapp.qml +++ b/sources/desktop-panel/package/contents/ui/inactiveapp.qml @@ -49,6 +49,8 @@ Item { property string cfg_fontWeight: fontWeight.currentText property string cfg_fontStyle: fontStyle.currentText property alias cfg_fontColor: selectColor.text + property alias cfg_textStyleColor: selectStyleColor.text + property string cfg_textStyle: textStyle.currentText Column { @@ -204,6 +206,74 @@ Item { onClicked: colorDialog.visible = true } } + + Row { + height: implicitHeight + width: parent.width + QtControls.Label { + height: parent.height + width: parent.width / 3 + horizontalAlignment: Text.AlignRight + verticalAlignment: Text.AlignVCenter + text: i18n("Style") + } + QtControls.ComboBox { + id: textStyle + width: parent.width * 2 / 3 + textRole: "label" + model: [ + { + 'label': i18n("normal"), + 'name': "normal" + }, + { + 'label': i18n("outline"), + 'name': "outline" + }, + { + 'label': i18n("raised"), + 'name': "raised" + }, + { + 'label': i18n("sunken"), + 'name': "sunken" + } + ] + onCurrentIndexChanged: cfg_textStyle = model[currentIndex]["name"] + Component.onCompleted: { + if (debug) console.debug() + for (var i = 0; i < model.length; i++) { + if (model[i]["name"] == plasmoid.configuration.textStyle) { + if (debug) console.info("Found", model[i]["name"], "on", i) + textStyle.currentIndex = i + } + } + } + } + } + + Row { + height: implicitHeight + width: parent.width + QtControls.Label { + height: parent.height + width: parent.width / 3 + horizontalAlignment: Text.AlignRight + verticalAlignment: Text.AlignVCenter + text: i18n("Style color") + } + QtControls.Button { + id: selectStyleColor + width: parent.width * 2 / 3 + style: QtStyles.ButtonStyle { + background: Rectangle { + color: plasmoid.configuration.textStyleColor + } + } + text: plasmoid.configuration.textStyleColor + onClicked: textStyleColorDialog.visible = true + } + } } QtDialogs.ColorDialog { @@ -213,6 +283,13 @@ Item { onAccepted: selectColor.text = colorDialog.color } + QtDialogs.ColorDialog { + id: textStyleColorDialog + title: i18n("Select a color") + color: selectStyleColor.text + onAccepted: selectStyleColor.text = textStyleColorDialog.color + } + QtDialogs.FontDialog { id: fontDialog title: i18n("Select a font") diff --git a/sources/desktop-panel/package/contents/ui/main.qml b/sources/desktop-panel/package/contents/ui/main.qml index 40efb02..8847dfe 100644 --- a/sources/desktop-panel/package/contents/ui/main.qml +++ b/sources/desktop-panel/package/contents/ui/main.qml @@ -124,12 +124,16 @@ Item { repeater.itemAt(i).font.italic = plasmoid.configuration.currentFontStyle == "italic" ? true : false repeater.itemAt(i).font.pointSize = plasmoid.configuration.currentFontSize repeater.itemAt(i).font.weight = general.fontWeight[plasmoid.configuration.currentFontWeight] + repeater.itemAt(i).style = general.textStyle[plasmoid.configuration.currentTextStyle] + repeater.itemAt(i).styleColor = plasmoid.configuration.currentTextStyleColor } else { repeater.itemAt(i).color = plasmoid.configuration.fontColor repeater.itemAt(i).font.family = plasmoid.configuration.fontFamily repeater.itemAt(i).font.italic = plasmoid.configuration.fontStyle == "italic" ? true : false repeater.itemAt(i).font.pointSize = plasmoid.configuration.fontSize repeater.itemAt(i).font.weight = general.fontWeight[plasmoid.configuration.fontWeight] + repeater.itemAt(i).style = general.textStyle[plasmoid.configuration.textStyle] + repeater.itemAt(i).styleColor = plasmoid.configuration.textStyleColor } repeater.itemAt(i).update() }