summaryrefslogtreecommitdiff
path: root/x11-themes/redcore-theme-sddm/files/redcore/KeyboardButton.qml
diff options
context:
space:
mode:
Diffstat (limited to 'x11-themes/redcore-theme-sddm/files/redcore/KeyboardButton.qml')
-rw-r--r--x11-themes/redcore-theme-sddm/files/redcore/KeyboardButton.qml38
1 files changed, 38 insertions, 0 deletions
diff --git a/x11-themes/redcore-theme-sddm/files/redcore/KeyboardButton.qml b/x11-themes/redcore-theme-sddm/files/redcore/KeyboardButton.qml
new file mode 100644
index 00000000..9989d93e
--- /dev/null
+++ b/x11-themes/redcore-theme-sddm/files/redcore/KeyboardButton.qml
@@ -0,0 +1,38 @@
+import QtQuick 2.2
+
+import org.kde.plasma.core 2.0 as PlasmaCore
+import org.kde.plasma.components 2.0 as PlasmaComponents
+
+import QtQuick.Controls 1.3 as QQC
+
+PlasmaComponents.ToolButton {
+ id: keyboardButton
+
+ property int currentIndex: -1
+
+ text: i18nd("plasma_lookandfeel_org.kde.lookandfeel", "Keyboard Layout: %1", instantiator.objectAt(currentIndex).shortName)
+ implicitWidth: minimumWidth
+ font.pointSize: config.fontSize
+
+ visible: menu.items.length > 1
+
+ Component.onCompleted: currentIndex = Qt.binding(function() {return keyboard.currentLayout});
+
+ menu: QQC.Menu {
+ id: keyboardMenu
+ style: BreezeMenuStyle {}
+ Instantiator {
+ id: instantiator
+ model: keyboard.layouts
+ onObjectAdded: keyboardMenu.insertItem(index, object)
+ onObjectRemoved: keyboardMenu.removeItem( object )
+ delegate: QQC.MenuItem {
+ text: modelData.longName
+ property string shortName: modelData.shortName
+ onTriggered: {
+ keyboard.currentLayout = model.index
+ }
+ }
+ }
+ }
+}