From f4f22df3a3e8fb4e71604d9b612289073080fd25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20K=C3=BCgler?= Date: Tue, 19 Feb 2013 17:12:24 +0100 Subject: [PATCH] Split out testcomponents applet into several files --- .../contents/ui/IconsPage.qml | 110 +++++++++ .../contents/ui/MousePage.qml | 117 ++++++++++ .../contents/ui/PlasmoidPage.qml | 61 +++++ .../contents/ui/testcomponents.qml | 217 +----------------- 4 files changed, 298 insertions(+), 207 deletions(-) create mode 100644 src/shell/applets/testcomponentsapplet/contents/ui/IconsPage.qml create mode 100644 src/shell/applets/testcomponentsapplet/contents/ui/MousePage.qml create mode 100644 src/shell/applets/testcomponentsapplet/contents/ui/PlasmoidPage.qml diff --git a/src/shell/applets/testcomponentsapplet/contents/ui/IconsPage.qml b/src/shell/applets/testcomponentsapplet/contents/ui/IconsPage.qml new file mode 100644 index 000000000..2b89d513f --- /dev/null +++ b/src/shell/applets/testcomponentsapplet/contents/ui/IconsPage.qml @@ -0,0 +1,110 @@ +/* + * Copyright 2013 Sebastian Kügler + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, 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 General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +import QtQuick 2.0 + +import org.kde.plasma.core 0.1 as PlasmaCore +import org.kde.plasma.components 0.1 as PlasmaComponents +import org.kde.plasma.extras 0.1 as PlasmaExtras +import org.kde.qtextracomponents 0.1 as QtExtras + +// IconTab + +PlasmaComponents.Page { + id: iconsPage + anchors { + fill: parent + margins: _s + } + Column { + anchors.fill: parent + spacing: _s + + PlasmaExtras.Title { + width: parent.width + elide: Text.ElideRight + text: "This is a PlasmaComponent" + } + PlasmaComponents.Label { + width: parent.width + text: "Icons" + } + Row { + height: _h + spacing: _s + + PlasmaCore.IconItem { + source: "configure" + width: parent.height + height: width + } + PlasmaCore.IconItem { + source: "dialog-ok" + width: parent.height + height: width + } + + PlasmaCore.IconItem { + source: "maximize" + width: parent.height + height: width + } + + + PlasmaCore.IconItem { + source: "akonadi" + width: parent.height + height: width + } + PlasmaCore.IconItem { + source: "clock" + width: parent.height + height: width + } + QtExtras.QIconItem { + icon: "preferences-desktop-icons" + width: parent.height + height: width + } + + } + PlasmaExtras.Heading { + level: 4 + width: parent.width + text: "Buttons" + } + Column { + width: parent.width + spacing: _s + + PlasmaComponents.Button { + text: "Button" + iconSource: "call-start" + } + PlasmaComponents.ToolButton { + text: "ToolButton" + iconSource: "call-stop" + } + PlasmaComponents.RadioButton { + text: "RadioButton" + //iconSource: "call-stop" + } + } + + } +} diff --git a/src/shell/applets/testcomponentsapplet/contents/ui/MousePage.qml b/src/shell/applets/testcomponentsapplet/contents/ui/MousePage.qml new file mode 100644 index 000000000..a54403ad9 --- /dev/null +++ b/src/shell/applets/testcomponentsapplet/contents/ui/MousePage.qml @@ -0,0 +1,117 @@ +/* + * Copyright 2013 Sebastian Kügler + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, 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 General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +import QtQuick 2.0 + +import org.kde.plasma.core 0.1 as PlasmaCore +import org.kde.plasma.components 0.1 as PlasmaComponents +import org.kde.plasma.extras 0.1 as PlasmaExtras +import org.kde.qtextracomponents 0.1 as QtExtras + +// MousePage + +PlasmaComponents.Page { + id: melPage + anchors { + fill: parent + margins: _s + } + PlasmaExtras.Title { + id: mellabel + text: "MouseEventListener" + anchors { left: parent.left; right: parent.right; top: parent.top } + } + QtExtras.MouseEventListener { + id: mel + hoverEnabled: true + anchors { left: parent.left; right: parent.right; top: mellabel.bottom; bottom: parent.bottom; } + /* + void pressed(KDeclarativeMouseEvent *mouse); + void positionChanged(KDeclarativeMouseEvent *mouse); + void released(KDeclarativeMouseEvent *mouse); + void clicked(KDeclarativeMouseEvent *mouse); + void pressAndHold(KDeclarativeMouseEvent *mouse); + void wheelMoved(KDeclarativeWheelEvent *wheel); + void containsMouseChanged(bool containsMouseChanged); + void hoverEnabledChanged(bool hoverEnabled); + */ + onPressed: { + print("Pressed"); + melstatus.text = "pressed"; + } + onPositionChanged: { + print("positionChanged: " + mouse.x + "," + mouse.y); + } + onReleased: { + print("Released"); + melstatus.text = "Released"; + } + onPressAndHold: { + print("pressAndHold"); + melstatus.text = "pressAndHold"; + } + onClicked: { + print("Clicked"); + melstatus.text = "clicked"; + } + onWheelMoved: { + print("Wheel: " + wheel.delta); + } + onContainsMouseChanged: { + print("Contains mouse: " + containsMouse); + } + + MouseArea { + //target: mel + anchors.fill: parent + onPressed: PlasmaExtras.DisappearAnimation { targetItem: bgImage } + onReleased: PlasmaExtras.AppearAnimation { targetItem: bgImage } + } + Image { + id: bgImage + source: "image://appbackgrounds/standard" + fillMode: Image.Tile + anchors.fill: parent + asynchronous: true +// opacity: mel.containsMouse ? 1 : 0.2 +// Behavior on opacity { PropertyAnimation {} } + } + Column { + //width: parent.width + spacing: _s + anchors.fill: parent + PlasmaComponents.Button { + text: "Button" + iconSource: "call-start" + } + PlasmaComponents.ToolButton { + text: "ToolButton" + iconSource: "call-stop" + } + PlasmaComponents.RadioButton { + text: "RadioButton" + //iconSource: "call-stop" + } + PlasmaComponents.Label { + id: melstatus + } + } + + } +} + diff --git a/src/shell/applets/testcomponentsapplet/contents/ui/PlasmoidPage.qml b/src/shell/applets/testcomponentsapplet/contents/ui/PlasmoidPage.qml new file mode 100644 index 000000000..e5fdfe6e6 --- /dev/null +++ b/src/shell/applets/testcomponentsapplet/contents/ui/PlasmoidPage.qml @@ -0,0 +1,61 @@ +/* + * Copyright 2013 Sebastian Kügler + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, 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 General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +import QtQuick 2.0 + +import org.kde.plasma.core 0.1 as PlasmaCore +import org.kde.plasma.components 0.1 as PlasmaComponents +import org.kde.plasma.extras 0.1 as PlasmaExtras +import org.kde.qtextracomponents 0.1 as QtExtras + +// PlasmoidPage + +PlasmaComponents.Page { + id: pageTwo + anchors { + fill: parent + margins: _s + } + Column { + anchors.centerIn: parent + PlasmaExtras.Heading { + level: 2 + text: "I'm an applet" + } + PlasmaComponents.Button { + text: "Background" + checked: plasmoid.backgroundHints == 1 + onClicked: { + print("Background hints: " + plasmoid.backgroundHints) + if (plasmoid.backgroundHints == 0) { + plasmoid.backgroundHints = 1//TODO: make work "StandardBackground" + } else { + plasmoid.backgroundHints = 0//TODO: make work "NoBackground" + } + } + } + PlasmaComponents.Button { + text: "Busy" + checked: plasmoid.busy + onClicked: { + plasmoid.busy = !plasmoid.busy + } + } + } +} + diff --git a/src/shell/applets/testcomponentsapplet/contents/ui/testcomponents.qml b/src/shell/applets/testcomponentsapplet/contents/ui/testcomponents.qml index 3cf4dfa54..48b244631 100644 --- a/src/shell/applets/testcomponentsapplet/contents/ui/testcomponents.qml +++ b/src/shell/applets/testcomponentsapplet/contents/ui/testcomponents.qml @@ -47,9 +47,9 @@ Item { height: _h currentTab: melPage - PlasmaComponents.TabButton { tab: pageOne; iconSource: "preferences-desktop-icons"} - PlasmaComponents.TabButton { tab: pageTwo; iconSource: "plasma"} - PlasmaComponents.TabButton { tab: melPage; iconSource: "preferences-desktop-mouse"} + PlasmaComponents.TabButton { tab: iconsPage; iconSource: "preferences-desktop-icons"} + PlasmaComponents.TabButton { tab: plasmoidPage; iconSource: "plasma"} + PlasmaComponents.TabButton { tab: mousePage; iconSource: "preferences-desktop-mouse"} } PlasmaComponents.TabGroup { @@ -62,218 +62,21 @@ Item { //currentTab: tabBar.currentTab - PlasmaComponents.Page { - id: pageOne - anchors { - fill: parent - margins: _s - } - Column { - anchors.fill: parent - spacing: _s - - PlasmaExtras.Title { - width: parent.width - elide: Text.ElideRight - text: "This is a PlasmaComponent" - } - PlasmaComponents.Label { - width: parent.width - text: "Icons" - } - Row { - height: _h - spacing: _s - - PlasmaCore.IconItem { - source: "configure" - width: parent.height - height: width - } - PlasmaCore.IconItem { - source: "dialog-ok" - width: parent.height - height: width - } - - PlasmaCore.IconItem { - source: "maximize" - width: parent.height - height: width - } - - - PlasmaCore.IconItem { - source: "akonadi" - width: parent.height - height: width - } - PlasmaCore.IconItem { - source: "clock" - width: parent.height - height: width - } - QtExtras.QIconItem { - icon: "preferences-desktop-icons" - width: parent.height - height: width - } - - } - PlasmaExtras.Heading { - level: 4 - width: parent.width - text: "Buttons" - } - Column { - width: parent.width - spacing: _s - - PlasmaComponents.Button { - text: "Button" - iconSource: "call-start" - } - PlasmaComponents.ToolButton { - text: "ToolButton" - iconSource: "call-stop" - } - PlasmaComponents.RadioButton { - text: "RadioButton" - //iconSource: "call-stop" - } - } - - } + IconsPage { + id: iconsPage } - PlasmaComponents.Page { - id: pageTwo - anchors { - fill: parent - margins: _s - } - Column { - anchors.centerIn: parent - PlasmaExtras.Heading { - level: 2 - text: "I'm an applet" - } - PlasmaComponents.Button { - text: "Background" - checked: plasmoid.backgroundHints == 1 - onClicked: { - print("Background hints: " + plasmoid.backgroundHints) - if (plasmoid.backgroundHints == 0) { - plasmoid.backgroundHints = 1//TODO: make work "StandardBackground" - } else { - plasmoid.backgroundHints = 0//TODO: make work "NoBackground" - } - } - } - PlasmaComponents.Button { - text: "Busy" - checked: plasmoid.busy - onClicked: { - plasmoid.busy = !plasmoid.busy - } - } - } + PlasmoidPage { + id: plasmoidPage } - PlasmaComponents.Page { - id: melPage - anchors { - fill: parent - margins: _s - } - PlasmaExtras.Title { - id: mellabel - text: "MouseEventListener" - anchors { left: parent.left; right: parent.right; top: parent.top } - } - QtExtras.MouseEventListener { - id: mel - hoverEnabled: true - anchors { left: parent.left; right: parent.right; top: mellabel.bottom; bottom: parent.bottom; } - /* - void pressed(KDeclarativeMouseEvent *mouse); - void positionChanged(KDeclarativeMouseEvent *mouse); - void released(KDeclarativeMouseEvent *mouse); - void clicked(KDeclarativeMouseEvent *mouse); - void pressAndHold(KDeclarativeMouseEvent *mouse); - void wheelMoved(KDeclarativeWheelEvent *wheel); - void containsMouseChanged(bool containsMouseChanged); - void hoverEnabledChanged(bool hoverEnabled); - */ - onPressed: { - print("Pressed"); - melstatus.text = "pressed"; - } - onPositionChanged: { - print("positionChanged: " + mouse.x + "," + mouse.y); - } - onReleased: { - print("Released"); - melstatus.text = "Released"; - } - onPressAndHold: { - print("pressAndHold"); - melstatus.text = "pressAndHold"; - } - onClicked: { - print("Clicked"); - melstatus.text = "clicked"; - } - onWheelMoved: { - print("Wheel: " + wheel.delta); - } - onContainsMouseChanged: { - print("Contains mouse: " + containsMouse); - } - - MouseArea { - //target: mel - anchors.fill: parent - onPressed: PlasmaExtras.DisappearAnimation { targetItem: bgImage } - onReleased: PlasmaExtras.AppearAnimation { targetItem: bgImage } - } - Image { - id: bgImage - source: "image://appbackgrounds/standard" - fillMode: Image.Tile - anchors.fill: parent - asynchronous: true - // opacity: mel.containsMouse ? 1 : 0.2 - // Behavior on opacity { PropertyAnimation {} } - } - Column { - //width: parent.width - spacing: _s - anchors.fill: parent - PlasmaComponents.Button { - text: "Button" - iconSource: "call-start" - } - PlasmaComponents.ToolButton { - text: "ToolButton" - iconSource: "call-stop" - } - PlasmaComponents.RadioButton { - text: "RadioButton" - //iconSource: "call-stop" - } - PlasmaComponents.Label { - id: melstatus - } - } - - } + MousePage { + id: mousPage } - } Component.onCompleted: { print("Components Test Applet loaded") - dataSource.engine = "org.kde.foobar" + //dataSource.engine = "org.kde.foobar" } } \ No newline at end of file