Add new component for the greyed out labels in Item Delegates.

Summary:
Plasma code is full of Label {opacity: 0.6}. We shouldn't be hardcoding
style into a UI, especially with magic numbers.

This adds a new component that does the same thing but will allow
plasmoids to write more semantic code.

Reviewers: #plasma, hein

Reviewed By: #plasma, hein

Subscribers: hein, sebas, broulik, plasma-devel, #frameworks

Tags: #plasma, #frameworks

Differential Revision: https://phabricator.kde.org/D4831
This commit is contained in:
David Edmundson 2017-09-27 15:50:57 +01:00
parent daef5c8b6b
commit 6df656252b
2 changed files with 56 additions and 0 deletions

View File

@ -0,0 +1,55 @@
/*
* Copyright 2012 by Sebastian Kügler <sebas@kde.org>
*
* 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 org.kde.plasma.components 2.0
/**
* This is a descriptive label which uses the plasma theme. The characteristics of
* the text will be automatically set according to the plasma theme. Use this
* components for less important additional data to show in a user interface.
*
* Example usage:
* @code
* import org.kde.plasma.extras 2.0 as PlasmaExtras
* [...]
* Column {
* PlasmaComponents.Label { text: "Firefox" }
* PlasmaExtras.DescriptiveLabel { text: "Web Browser"}
* [...]
* }
* @endcode
*
* See PlasmaComponents Label and primitive QML Text element API for additional
* properties, methods and signals.
*
* @inherits org::kde::plasma::components::Label
*/
Label {
id: root
/*
* If a user can interact with this item, for example in a ListView delegate, this
* property should be set to true when the label is being interacted with.
* The default is false
*/
property bool active: false
opacity: active ? 0.8 : 0.6
}

View File

@ -8,6 +8,7 @@ Paragraph 2.0 Paragraph.qml
PageRow 2.0 PageRow.qml PageRow 2.0 PageRow.qml
ScrollArea 2.0 ScrollArea.qml ScrollArea 2.0 ScrollArea.qml
Title 2.0 Title.qml Title 2.0 Title.qml
DescriptiveLabel 2.0 DescriptiveLabel.qml
ActivateAnimation 2.0 animations/ActivateAnimation.qml ActivateAnimation 2.0 animations/ActivateAnimation.qml
AppearAnimation 2.0 animations/AppearAnimation.qml AppearAnimation 2.0 animations/AppearAnimation.qml