From 1ab872181ba7550340a3b6834c2ca95e17b120e0 Mon Sep 17 00:00:00 2001 From: Marco Martin Date: Tue, 19 Aug 2014 17:54:49 +0200 Subject: [PATCH 1/9] start of a checkbox style --- .../plasmacomponents/qml/CheckBox.qml | 36 +++-------------- .../qml/styles/CheckBoxStyle.qml | 39 +++++++++++++++++++ 2 files changed, 44 insertions(+), 31 deletions(-) create mode 100644 src/declarativeimports/plasmacomponents/qml/styles/CheckBoxStyle.qml diff --git a/src/declarativeimports/plasmacomponents/qml/CheckBox.qml b/src/declarativeimports/plasmacomponents/qml/CheckBox.qml index 5e98d1176..4a6fc4e50 100644 --- a/src/declarativeimports/plasmacomponents/qml/CheckBox.qml +++ b/src/declarativeimports/plasmacomponents/qml/CheckBox.qml @@ -18,8 +18,9 @@ */ import QtQuick 2.1 +import QtQuick.Controls 1.2 as QtControls import org.kde.plasma.core 2.0 as PlasmaCore -import "private" as Private +import "styles" as Styles /** * A check box is a component that can be switched on (checked) or off @@ -32,37 +33,10 @@ import "private" as Private * Qt.Key_Select, Qt.Key_Return, and Qt.Key_Enter hardware keys that send the * clicked signal. * - * All elements of this component are defined in DualStateButton, its base component. + * @inherit QtQuick.Controls.CheckBox */ -Private.DualStateButton { +QtControls.CheckBox { id: checkBox - view: PlasmaCore.FrameSvgItem { - imagePath: "widgets/button" - prefix: "normal" - width: theme.mSize(theme.defaultFont).height + margins.left - height: theme.mSize(theme.defaultFont).height + margins.top - PlasmaCore.SvgItem { - svg: PlasmaCore.Svg { - id: checkmarkSvg - imagePath: "widgets/checkmarks" - } - elementId: "checkbox" - opacity: checked ? 1 : 0 - anchors { - fill: parent - margins: parent.margins.left/2 - } - Behavior on opacity { - NumberAnimation { - duration: units.longDuration - easing.type: Easing.InOutQuad - } - } - } - } - - activeFocusOnTab: true - - shadow: Private.ButtonShadow {} + style: Styles.CheckBoxStyle {} } diff --git a/src/declarativeimports/plasmacomponents/qml/styles/CheckBoxStyle.qml b/src/declarativeimports/plasmacomponents/qml/styles/CheckBoxStyle.qml new file mode 100644 index 000000000..1cbc92872 --- /dev/null +++ b/src/declarativeimports/plasmacomponents/qml/styles/CheckBoxStyle.qml @@ -0,0 +1,39 @@ +/* + * Copyright 2014 Marco Martin + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU Library General Public License as + * published by the Free Software Foundation; either version 2, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Library General Public License for more details + * + * You should have received a copy of the GNU Library General Public + * License along with this program; if not, write to the + * Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 2.010-1301, USA. + */ + +import QtQuick 2.0 +import QtQuick.Controls.Styles 1.1 as QtQuickControlStyle + +import org.kde.plasma.core 2.0 as PlasmaCore +import org.kde.plasma.components 2.0 as PlasmaComponents + + +QtQuickControlStyle.CheckBoxStyle { + id: checkboxStyle + + label: PlasmaComponents.Label { + text: control.text + } + //Not needed? + background: Item {} + + spacing: Math.round(units.mSize(theme.defaultFont).height/4) + + //indicator: +} From b3c6c294ee6dbcb6f8d7034c2f078edc64f32479 Mon Sep 17 00:00:00 2001 From: Marco Martin Date: Tue, 19 Aug 2014 18:07:19 +0200 Subject: [PATCH 2/9] style the ckeckbox --- .../qml/styles/CheckBoxStyle.qml | 29 +++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/src/declarativeimports/plasmacomponents/qml/styles/CheckBoxStyle.qml b/src/declarativeimports/plasmacomponents/qml/styles/CheckBoxStyle.qml index 1cbc92872..ebb904c34 100644 --- a/src/declarativeimports/plasmacomponents/qml/styles/CheckBoxStyle.qml +++ b/src/declarativeimports/plasmacomponents/qml/styles/CheckBoxStyle.qml @@ -33,7 +33,32 @@ QtQuickControlStyle.CheckBoxStyle { //Not needed? background: Item {} - spacing: Math.round(units.mSize(theme.defaultFont).height/4) + spacing: units.smallSpacing - //indicator: + indicator: PlasmaCore.FrameSvgItem { + imagePath: "widgets/button" + prefix: "normal" + width: units.gridUnit + height: units.gridUnit + opacity: control.enabled ? 1 : 0.6 + + PlasmaCore.SvgItem { + svg: PlasmaCore.Svg { + id: checkmarkSvg + imagePath: "widgets/checkmarks" + } + elementId: "checkbox" + opacity: control.checked ? 1 : 0 + anchors { + fill: parent + margins: parent.margins.left/2 + } + Behavior on opacity { + NumberAnimation { + duration: units.longDuration + easing.type: Easing.InOutQuad + } + } + } + } } From c7ef2a34a97b904079be3366b169c8a698a1ed49 Mon Sep 17 00:00:00 2001 From: Marco Martin Date: Tue, 19 Aug 2014 19:14:03 +0200 Subject: [PATCH 3/9] switch is just a compat class for checkbox since the guidelines forbid the switch looking switch --- .../plasmacomponents/qml/Switch.qml | 36 ++----------------- 1 file changed, 3 insertions(+), 33 deletions(-) diff --git a/src/declarativeimports/plasmacomponents/qml/Switch.qml b/src/declarativeimports/plasmacomponents/qml/Switch.qml index d0608f927..0ba43c4d5 100644 --- a/src/declarativeimports/plasmacomponents/qml/Switch.qml +++ b/src/declarativeimports/plasmacomponents/qml/Switch.qml @@ -18,8 +18,6 @@ */ import QtQuick 2.1 -import org.kde.plasma.core 2.0 as PlasmaCore -import "private" as Private /** * A check box is a component that can be switched on (checked) or off @@ -32,37 +30,9 @@ import "private" as Private * Qt.Key_Select, Qt.Key_Return, and Qt.Key_Enter hardware keys that send the * clicked signal. * - * All elements of this component are defined in DualStateButton, its base component. + * @inherit QtQuick.Controls.CheckBox * */ -Private.DualStateButton { - id: checkBox - view: PlasmaCore.FrameSvgItem { - imagePath: "widgets/button" - prefix: "normal" - width: theme.mSize(theme.defaultFont).height + margins.left - height: theme.mSize(theme.defaultFont).height + margins.top - - PlasmaCore.SvgItem { - svg: PlasmaCore.Svg { - id: checkmarkSvg - imagePath: "widgets/checkmarks" - } - elementId: "checkbox" - opacity: checked ? 1 : 0 - anchors { - fill: parent - margins: parent.margins.left/2 - } - Behavior on opacity { - NumberAnimation { - duration: units.longDuration - easing.type: Easing.InOutQuad - } - } - } - } - - shadow: Private.ButtonShadow {} - Accessible.role: Accessible.CheckBox +CheckBox { + id: checkbox } From df637bf5bbacf9c0144b12273b642081443557f1 Mon Sep 17 00:00:00 2001 From: Marco Martin Date: Tue, 19 Aug 2014 19:14:36 +0200 Subject: [PATCH 4/9] add a radiobutton style almost identical to checkbox stuff, goes together --- .../plasmacomponents/qml/CheckBox.qml | 1 + .../plasmacomponents/qml/RadioButton.qml | 77 +++++++------------ .../qml/styles/RadioButtonStyle.qml | 68 ++++++++++++++++ 3 files changed, 95 insertions(+), 51 deletions(-) create mode 100644 src/declarativeimports/plasmacomponents/qml/styles/RadioButtonStyle.qml diff --git a/src/declarativeimports/plasmacomponents/qml/CheckBox.qml b/src/declarativeimports/plasmacomponents/qml/CheckBox.qml index 4a6fc4e50..8a66df226 100644 --- a/src/declarativeimports/plasmacomponents/qml/CheckBox.qml +++ b/src/declarativeimports/plasmacomponents/qml/CheckBox.qml @@ -1,5 +1,6 @@ /* * Copyright (C) 2011 by Daker Fernandes Pinheiro +* Copyright 2014 Marco Martin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Library General Public License as diff --git a/src/declarativeimports/plasmacomponents/qml/RadioButton.qml b/src/declarativeimports/plasmacomponents/qml/RadioButton.qml index 00a1bbf46..57202089f 100644 --- a/src/declarativeimports/plasmacomponents/qml/RadioButton.qml +++ b/src/declarativeimports/plasmacomponents/qml/RadioButton.qml @@ -1,25 +1,27 @@ /* -* Copyright (C) 2011 by Daker Fernandes Pinheiro -* -* This program is free software; you can redistribute it and/or modify -* it under the terms of the GNU Library General Public License as -* published by the Free Software Foundation; either version 2, or -* (at your option) any later version. -* -* This program is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -* GNU General Public License for more details -* -* You should have received a copy of the GNU Library General Public -* License along with this program; if not, write to the -* Free Software Foundation, Inc., -* 51 Franklin Street, Fifth Floor, Boston, MA 2.010-1301, USA. -*/ + * Copyright (C) 2011 by Daker Fernandes Pinheiro + * Copyright 2014 Marco Martin + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU Library General Public License as + * published by the Free Software Foundation; either version 2, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details + * + * You should have received a copy of the GNU Library General Public + * License along with this program; if not, write to the + * Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 2.010-1301, USA. + */ import QtQuick 2.1 +import QtQuick.Controls 1.2 as QtControls import org.kde.plasma.core 2.0 as PlasmaCore -import "private" as Private +import "styles" as Styles /** * A radio button component consists of a radio button and a line of text. Only @@ -28,41 +30,14 @@ import "private" as Private * be set at the list creation. If not set, the list is shown without a * selection. * - * All elements of this component are defined in DualStateButton, its base component. + * When a check box has the focus, its state can be toggled using the + * Qt.Key_Select, Qt.Key_Return, and Qt.Key_Enter hardware keys that send the + * clicked signal. * + * @inherit QtQuick.Controls.RadioButton */ -//FIXME: this should be round, DualStateButton shouldn't draw the shadow -Private.DualStateButton { +QtControls.RadioButton { id: radioButton - view: PlasmaCore.SvgItem { - svg: PlasmaCore.Svg { - id: buttonSvg - imagePath: "widgets/actionbutton" - } - elementId: "normal" - width: theme.mSize(theme.defaultFont).height + 6 - height: width - PlasmaCore.SvgItem { - svg: PlasmaCore.Svg { - id: checkmarkSvg - imagePath: "widgets/checkmarks" - } - elementId: "radiobutton" - opacity: checked ? 1 : 0 - anchors { - fill: parent - } - Behavior on opacity { - NumberAnimation { - duration: units.longDuration - easing.type: Easing.InOutQuad - } - } - } - } - activeFocusOnTab: true - - shadow: Private.RoundShadow {} - Accessible.role: Accessible.RadioButton + style: Styles.RadioButtonStyle {} } diff --git a/src/declarativeimports/plasmacomponents/qml/styles/RadioButtonStyle.qml b/src/declarativeimports/plasmacomponents/qml/styles/RadioButtonStyle.qml new file mode 100644 index 000000000..a5d4952b9 --- /dev/null +++ b/src/declarativeimports/plasmacomponents/qml/styles/RadioButtonStyle.qml @@ -0,0 +1,68 @@ +/* + * Copyright 2014 Marco Martin + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU Library General Public License as + * published by the Free Software Foundation; either version 2, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Library General Public License for more details + * + * You should have received a copy of the GNU Library General Public + * License along with this program; if not, write to the + * Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 2.010-1301, USA. + */ + +import QtQuick 2.0 +import QtQuick.Controls.Styles 1.1 as QtQuickControlStyle + +import org.kde.plasma.core 2.0 as PlasmaCore +import org.kde.plasma.components 2.0 as PlasmaComponents + + +QtQuickControlStyle.RadioButtonStyle { + id: radiobuttonStyle + + label: PlasmaComponents.Label { + text: control.text + } + //Not needed? + background: Item {} + + spacing: units.smallSpacing + + indicator: PlasmaCore.SvgItem { + svg: PlasmaCore.Svg { + id: buttonSvg + imagePath: "widgets/actionbutton" + } + elementId: "normal" + //slightly bigger then the checkbox: being round its apparent size is smaller + //making it slightly bigger seems to make it more balanced giving + //it roughly the same area + width: units.gridUnit * 1.2 + height: width + + PlasmaCore.SvgItem { + svg: PlasmaCore.Svg { + id: checkmarkSvg + imagePath: "widgets/checkmarks" + } + elementId: "radiobutton" + opacity: control.checked ? 1 : 0 + anchors { + fill: parent + } + Behavior on opacity { + NumberAnimation { + duration: units.longDuration + easing.type: Easing.InOutQuad + } + } + } + } +} From ff775e3ad7c62e8267b8389f73160a05f83ef1f4 Mon Sep 17 00:00:00 2001 From: Marco Martin Date: Wed, 20 Aug 2014 10:56:50 +0200 Subject: [PATCH 5/9] support evil tristates --- .../plasmacomponents/qml/styles/CheckBoxStyle.qml | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/declarativeimports/plasmacomponents/qml/styles/CheckBoxStyle.qml b/src/declarativeimports/plasmacomponents/qml/styles/CheckBoxStyle.qml index ebb904c34..7677d573d 100644 --- a/src/declarativeimports/plasmacomponents/qml/styles/CheckBoxStyle.qml +++ b/src/declarativeimports/plasmacomponents/qml/styles/CheckBoxStyle.qml @@ -30,7 +30,6 @@ QtQuickControlStyle.CheckBoxStyle { label: PlasmaComponents.Label { text: control.text } - //Not needed? background: Item {} spacing: units.smallSpacing @@ -48,7 +47,16 @@ QtQuickControlStyle.CheckBoxStyle { imagePath: "widgets/checkmarks" } elementId: "checkbox" - opacity: control.checked ? 1 : 0 + opacity: { + switch (control.checkedState) { + case Qt.Checked: + return 1; + case Qt.PartiallyChecked: + return 0.5; + default: + return 0; + } + } anchors { fill: parent margins: parent.margins.left/2 From 9c485f8427b96ec188ae0df630ece3d482c5627e Mon Sep 17 00:00:00 2001 From: Marco Martin Date: Wed, 20 Aug 2014 11:34:49 +0200 Subject: [PATCH 6/9] fix of the radio svg size --- .../qml/styles/RadioButtonStyle.qml | 7 +++---- .../breeze/widgets/actionbutton.svgz | Bin 4082 -> 4098 bytes 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/declarativeimports/plasmacomponents/qml/styles/RadioButtonStyle.qml b/src/declarativeimports/plasmacomponents/qml/styles/RadioButtonStyle.qml index a5d4952b9..f4df12e4a 100644 --- a/src/declarativeimports/plasmacomponents/qml/styles/RadioButtonStyle.qml +++ b/src/declarativeimports/plasmacomponents/qml/styles/RadioButtonStyle.qml @@ -41,13 +41,12 @@ QtQuickControlStyle.RadioButtonStyle { imagePath: "widgets/actionbutton" } elementId: "normal" - //slightly bigger then the checkbox: being round its apparent size is smaller - //making it slightly bigger seems to make it more balanced giving - //it roughly the same area - width: units.gridUnit * 1.2 + + width: units.gridUnit height: width PlasmaCore.SvgItem { + id: checkmark svg: PlasmaCore.Svg { id: checkmarkSvg imagePath: "widgets/checkmarks" diff --git a/src/desktoptheme/breeze/widgets/actionbutton.svgz b/src/desktoptheme/breeze/widgets/actionbutton.svgz index 25aacc8b4ef2a35f9386530b142d0dc2af44a8dc..fda4a9b7bf5ce4147e1070058e98efcb5c403b09 100644 GIT binary patch literal 4098 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 A{{R30 literal 4082 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 From 0527185a092419c9e6e3eff76e6cd2e3ad40a9f1 Mon Sep 17 00:00:00 2001 From: Marco Martin Date: Wed, 20 Aug 2014 12:11:57 +0200 Subject: [PATCH 7/9] proper icons in drawers --- src/desktoptheme/breeze/CMakeLists.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/desktoptheme/breeze/CMakeLists.txt b/src/desktoptheme/breeze/CMakeLists.txt index 2e2828783..b6a7b0e7e 100644 --- a/src/desktoptheme/breeze/CMakeLists.txt +++ b/src/desktoptheme/breeze/CMakeLists.txt @@ -22,3 +22,6 @@ install( FILES ${translucent_dialogs} DESTINATION ${PLASMA_DATA_INSTALL_DIR}/des FILE(GLOB icons icons/*.svgz) install( FILES ${icons} DESTINATION ${PLASMA_DATA_INSTALL_DIR}/desktoptheme/default/icons/ ) +FILE(GLOB appbackgrounds appbackgrounds/*.png) +install( FILES ${appbackgrounds} DESTINATION ${DATA_INSTALL_DIR}/desktoptheme/air-mobile/appbackgrounds/ ) + From 58f4f3b12665f57c907748e9dcbd38a3af63557d Mon Sep 17 00:00:00 2001 From: Marco Martin Date: Wed, 20 Aug 2014 12:14:19 +0200 Subject: [PATCH 8/9] Revert "proper icons in drawers" This reverts commit 0527185a092419c9e6e3eff76e6cd2e3ad40a9f1. --- src/desktoptheme/breeze/CMakeLists.txt | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/desktoptheme/breeze/CMakeLists.txt b/src/desktoptheme/breeze/CMakeLists.txt index b6a7b0e7e..2e2828783 100644 --- a/src/desktoptheme/breeze/CMakeLists.txt +++ b/src/desktoptheme/breeze/CMakeLists.txt @@ -22,6 +22,3 @@ install( FILES ${translucent_dialogs} DESTINATION ${PLASMA_DATA_INSTALL_DIR}/des FILE(GLOB icons icons/*.svgz) install( FILES ${icons} DESTINATION ${PLASMA_DATA_INSTALL_DIR}/desktoptheme/default/icons/ ) -FILE(GLOB appbackgrounds appbackgrounds/*.png) -install( FILES ${appbackgrounds} DESTINATION ${DATA_INSTALL_DIR}/desktoptheme/air-mobile/appbackgrounds/ ) - From 770121d5162e6a9d65b836d051e575d00ad5911d Mon Sep 17 00:00:00 2001 From: Marco Martin Date: Wed, 20 Aug 2014 15:04:39 +0200 Subject: [PATCH 9/9] dd focus rectangles --- .../plasmacomponents/qml/styles/CheckBoxStyle.qml | 7 ++++++- .../plasmacomponents/qml/styles/RadioButtonStyle.qml | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/declarativeimports/plasmacomponents/qml/styles/CheckBoxStyle.qml b/src/declarativeimports/plasmacomponents/qml/styles/CheckBoxStyle.qml index 7677d573d..d9dc9fd92 100644 --- a/src/declarativeimports/plasmacomponents/qml/styles/CheckBoxStyle.qml +++ b/src/declarativeimports/plasmacomponents/qml/styles/CheckBoxStyle.qml @@ -22,7 +22,7 @@ import QtQuick.Controls.Styles 1.1 as QtQuickControlStyle import org.kde.plasma.core 2.0 as PlasmaCore import org.kde.plasma.components 2.0 as PlasmaComponents - +import "../private" as Private QtQuickControlStyle.CheckBoxStyle { id: checkboxStyle @@ -68,5 +68,10 @@ QtQuickControlStyle.CheckBoxStyle { } } } + Private.ButtonShadow { + z: -1 + anchors.fill: parent + state: control.activeFocus ? "focus" : (control.hovered ? "hover" : "shadow") + } } } diff --git a/src/declarativeimports/plasmacomponents/qml/styles/RadioButtonStyle.qml b/src/declarativeimports/plasmacomponents/qml/styles/RadioButtonStyle.qml index f4df12e4a..6d06f01c5 100644 --- a/src/declarativeimports/plasmacomponents/qml/styles/RadioButtonStyle.qml +++ b/src/declarativeimports/plasmacomponents/qml/styles/RadioButtonStyle.qml @@ -22,7 +22,7 @@ import QtQuick.Controls.Styles 1.1 as QtQuickControlStyle import org.kde.plasma.core 2.0 as PlasmaCore import org.kde.plasma.components 2.0 as PlasmaComponents - +import "../private" as Private QtQuickControlStyle.RadioButtonStyle { id: radiobuttonStyle @@ -63,5 +63,10 @@ QtQuickControlStyle.RadioButtonStyle { } } } + Private.RoundShadow { + anchors.fill: parent + z: -1 + state: control.activeFocus ? "focus" : (control.hovered ? "hover" : "shadow") + } } }