diff --git a/sources/desktop-panel/package/contents/ui/widget.qml b/sources/desktop-panel/package/contents/ui/widget.qml index 5f235ce..28609cd 100644 --- a/sources/desktop-panel/package/contents/ui/widget.qml +++ b/sources/desktop-panel/package/contents/ui/widget.qml @@ -20,6 +20,7 @@ import QtQuick.Controls 1.3 as QtControls import QtQuick.Dialogs 1.2 as QtDialogs import org.kde.plasma.private.desktoppanel 1.0 +import "." Item { @@ -42,196 +43,18 @@ Item { Column { id: pageColumn anchors.fill: parent - QtControls.Label { - width: parent.width - horizontalAlignment: Text.AlignHCenter - verticalAlignment: Text.AlignVCenter - wrapMode: Text.WordWrap - text: i18n("Detailed information may be found on project homepage") - onLinkActivated: Qt.openUrlExternally(link) + + AWInfoLabel {} + + HtmlDefaultFunctionsBar { + textArea: textPattern } - Row { - height: implicitHeight - width: parent.width - QtControls.Button { - width: parent.width * 3 / 15 - text: i18n("Bgcolor") - - onClicked: backgroundDialog.visible = true - - QtDialogs.ColorDialog { - id: backgroundDialog - title: i18n("Select a color") - onAccepted: { - var text = textPattern.text - textPattern.text = "" + - text + "" - } - } - } - QtControls.Button { - width: parent.width * 3 / 15 - text: i18n("Font") - iconName: "font" - - onClicked: { - if (debug) console.debug("Font button") - var defaultFont = { - "color": plasmoid.configuration.fontColor, - "family": plasmoid.configuration.fontFamily, - "size": plasmoid.configuration.fontSize - } - var font = dpAdds.getFont(defaultFont) - if (font.applied != 1) { - if (debug) console.debug("No font selected") - return - } - - var selected = textPattern.selectedText - textPattern.remove(textPattern.selectionStart, textPattern.selectionEnd) - textPattern.insert(textPattern.cursorPosition, - "" + - selected + "") - } - } - QtControls.Button { - width: parent.width / 15 - iconName: "format-indent-more" - - onClicked: { - if (debug) console.debug("Indent button") - var selected = textPattern.selectedText - textPattern.remove(textPattern.selectionStart, textPattern.selectionEnd) - textPattern.insert(textPattern.cursorPosition, selected + "
\n") - } - } - - QtControls.Button { - width: parent.width / 15 - iconName: "format-text-bold" - - onClicked: { - if (debug) console.debug("Bold button") - var selected = textPattern.selectedText - textPattern.remove(textPattern.selectionStart, textPattern.selectionEnd) - textPattern.insert(textPattern.cursorPosition, "" + selected + "") - } - } - QtControls.Button { - width: parent.width / 15 - iconName: "format-text-italic" - - onClicked: { - if (debug) console.debug("Italic button") - var selected = textPattern.selectedText - textPattern.remove(textPattern.selectionStart, textPattern.selectionEnd) - textPattern.insert(textPattern.cursorPosition, "" + selected + "") - } - } - QtControls.Button { - width: parent.width / 15 - iconName: "format-text-underline" - - onClicked: { - if (debug) console.debug("Underline button") - var selected = textPattern.selectedText - textPattern.remove(textPattern.selectionStart, textPattern.selectionEnd) - textPattern.insert(textPattern.cursorPosition, "" + selected + "") - } - } - QtControls.Button { - width: parent.width / 15 - iconName: "format-text-strikethrough" - - onClicked: { - if (debug) console.debug("Strike button") - var selected = textPattern.selectedText - textPattern.remove(textPattern.selectionStart, textPattern.selectionEnd) - textPattern.insert(textPattern.cursorPosition, "" + selected + "") - } - } - - QtControls.Button { - width: parent.width / 15 - iconName: "format-justify-left" - - onClicked: { - if (debug) console.debug("Left button") - var selected = textPattern.selectedText - textPattern.remove(textPattern.selectionStart, textPattern.selectionEnd) - textPattern.insert(textPattern.cursorPosition, "

" + selected + "

") - } - } - QtControls.Button { - width: parent.width / 15 - iconName: "format-justify-center" - - onClicked: { - if (debug) console.debug("Center button") - var selected = textPattern.selectedText - textPattern.remove(textPattern.selectionStart, textPattern.selectionEnd) - textPattern.insert(textPattern.cursorPosition, "

" + selected + "

") - } - } - QtControls.Button { - width: parent.width / 15 - iconName: "format-justify-right" - - onClicked: { - if (debug) console.debug("Right button") - var selected = textPattern.selectedText - textPattern.remove(textPattern.selectionStart, textPattern.selectionEnd) - textPattern.insert(textPattern.cursorPosition, "

" + selected + "

") - } - } - QtControls.Button { - width: parent.width / 15 - iconName: "format-justify-fill" - - onClicked: { - if (debug) console.debug("Justify button") - var selected = textPattern.selectedText - textPattern.remove(textPattern.selectionStart, textPattern.selectionEnd) - textPattern.insert(textPattern.cursorPosition, "

" + selected + "

") - } - } - } - - Row { - height: implicitHeight - width: parent.width - QtControls.ComboBox { - id: tags - width: parent.width - addTagButton.width - showValueButton.width - model: dpAdds.dictKeys() - } - QtControls.Button { - id: addTagButton - text: i18n("Add") - - onClicked: { - if (debug) console.debug("Add tag button") - var selected = textPattern.selectedText - textPattern.remove(textPattern.selectionStart, textPattern.selectionEnd) - textPattern.insert(textPattern.cursorPosition, selected + "$" + tags.currentText) - } - } - QtControls.Button { - id: showValueButton - text: i18n("Show value") - - onClicked: { - if (debug) console.debug("Show tag button") - var message = i18n("Tag: %1", tags.currentText) - message += "
" - message += i18n("Value: %1", dpAdds.valueByKey(tags.currentText)) - dpAdds.sendNotification("tag", message) - } - } + AWTagSelector { + backend: dpAdds + notifyBackend: dpAdds + textArea: textPattern + groups: general.dpTagRegexp } QtControls.TextArea { diff --git a/sources/desktop-panel/plugin/dpadds.cpp b/sources/desktop-panel/plugin/dpadds.cpp index ee25dae..6882700 100644 --- a/sources/desktop-panel/plugin/dpadds.cpp +++ b/sources/desktop-panel/plugin/dpadds.cpp @@ -72,7 +72,7 @@ int DPAdds::currentDesktop() const } -QStringList DPAdds::dictKeys() const +QStringList DPAdds::dictKeys(const bool, const QString) const { QStringList allKeys; allKeys.append(QString("mark")); @@ -220,6 +220,14 @@ void DPAdds::setToolTipData(const QVariantMap tooltipData) } +QString DPAdds::infoByKey(QString key) const +{ + qCDebug(LOG_AW) << "Requested info for key" << key; + + return QString("(none)"); +} + + QString DPAdds::valueByKey(const QString key, int desktop) const { qCDebug(LOG_DP) << "Requested key" << key << "for desktop" << desktop; diff --git a/sources/desktop-panel/plugin/dpadds.h b/sources/desktop-panel/plugin/dpadds.h index 3c85a6b..a9d2e0d 100644 --- a/sources/desktop-panel/plugin/dpadds.h +++ b/sources/desktop-panel/plugin/dpadds.h @@ -45,7 +45,7 @@ public: virtual ~DPAdds(); Q_INVOKABLE bool isDebugEnabled() const; Q_INVOKABLE int currentDesktop() const; - Q_INVOKABLE QStringList dictKeys() const; + Q_INVOKABLE QStringList dictKeys(const bool = true, const QString = QString()) const; Q_INVOKABLE int numberOfDesktops() const; Q_INVOKABLE QString toolTipImage(const int desktop) const; Q_INVOKABLE QString parsePattern(const QString pattern, @@ -53,6 +53,7 @@ public: // values Q_INVOKABLE void setMark(const QString newMark); Q_INVOKABLE void setToolTipData(const QVariantMap tooltipData); + Q_INVOKABLE QString infoByKey(QString key) const; Q_INVOKABLE QString valueByKey(const QString key, int desktop = -1) const; // configuration slots Q_INVOKABLE QString getAboutText(const QString type = "header") const; diff --git a/sources/qml/general.qml b/sources/qml/general.qml index 81d8807..6a38431 100644 --- a/sources/qml/general.qml +++ b/sources/qml/general.qml @@ -99,6 +99,12 @@ QtObject { "regexp": "functions" } ] + property variant dpTagRegexp: [ + { + "label": i18n("All"), + "regexp": ".*" + } + ] property variant fontStyleModel: [ { "label": i18n("normal"),