diff options
author | Adrian Kummerlaender | 2015-08-19 11:13:35 +0200 |
---|---|---|
committer | Adrian Kummerlaender | 2015-08-19 11:13:35 +0200 |
commit | 4cb435f2a7bbeafb53f067d95ec83e0b3a1a17f8 (patch) | |
tree | ad308460ab5f47f498b4d2432e36c7511c5e9aab /src/list/TerminalItem.qml | |
parent | 90da724a56c2ff20617d3e231a6ef877928df482 (diff) | |
download | MetaTerm-4cb435f2a7bbeafb53f067d95ec83e0b3a1a17f8.tar MetaTerm-4cb435f2a7bbeafb53f067d95ec83e0b3a1a17f8.tar.gz MetaTerm-4cb435f2a7bbeafb53f067d95ec83e0b3a1a17f8.tar.bz2 MetaTerm-4cb435f2a7bbeafb53f067d95ec83e0b3a1a17f8.tar.lz MetaTerm-4cb435f2a7bbeafb53f067d95ec83e0b3a1a17f8.tar.xz MetaTerm-4cb435f2a7bbeafb53f067d95ec83e0b3a1a17f8.tar.zst MetaTerm-4cb435f2a7bbeafb53f067d95ec83e0b3a1a17f8.zip |
Extract all settings into `SettingsHandler` object
This enables the user to straight forwardly change all application settings via command mode.
During the implementation of this change I discovered that the way I was passing around `StateHandler` and `SettingsHandler` instances using properties was unnecessary. If all object instances are created in a common hierarchy they can access each other by their `id` property - i.e. `settings` and `mode` are available to the whole application without property trickery.
Diffstat (limited to 'src/list/TerminalItem.qml')
-rw-r--r-- | src/list/TerminalItem.qml | 25 |
1 files changed, 9 insertions, 16 deletions
diff --git a/src/list/TerminalItem.qml b/src/list/TerminalItem.qml index 4c71be4..06b60b9 100644 --- a/src/list/TerminalItem.qml +++ b/src/list/TerminalItem.qml @@ -6,19 +6,11 @@ import Qt.labs.settings 1.0 Item { id: item - property int index : 0 property EmbeddedTerminal terminal : null + property int index : 0 signal executed (int index) - property Settings settings : Settings { - category: "item" - - property int fontSize : 18 - property string fontFamily : "Monospace" - property string fontColor : "white" - } - anchors { left: parent.left right: parent.right @@ -106,6 +98,7 @@ Item { var terminalComponent = Qt.createComponent("qrc:/EmbeddedTerminal.qml"); var instantiateTerminal = function() { item.terminal = terminalComponent.createObject(elementList, { + "settings" : settings, "program" : program, "workingDirectory" : "$HOME", "focus" : true @@ -136,12 +129,12 @@ Item { id: command font { - family: settings.fontFamily - pointSize: settings.fontSize + family: settings.item.fontFamily + pointSize: settings.item.fontSize } - color: settings.fontColor - selectionColor: settings.fontColor + color: settings.item.fontColor + selectionColor: settings.item.fontColor selectedTextColor: "#161616" selectByMouse: true @@ -162,10 +155,10 @@ Item { Text { font { - family: settings.fontFamily - pointSize: settings.fontSize / 1.5 + family: settings.item.fontFamily + pointSize: settings.item.fontSize / 1.5 } - color: settings.fontColor + color: settings.item.fontColor text: item.index } |