diff options
Diffstat (limited to 'src/widget')
| -rw-r--r-- | src/widget/EmbeddedTerminal.qml | 53 | ||||
| -rw-r--r-- | src/widget/Overlay.qml | 61 | 
2 files changed, 65 insertions, 49 deletions
| diff --git a/src/widget/EmbeddedTerminal.qml b/src/widget/EmbeddedTerminal.qml index 23e545b..0a7a562 100644 --- a/src/widget/EmbeddedTerminal.qml +++ b/src/widget/EmbeddedTerminal.qml @@ -92,59 +92,14 @@ Item {  				onHeightChanged: overlay.displayBriefly()  				onWidthChanged:  overlay.displayBriefly() -				Rectangle { +				Overlay {  					id: overlay -					property bool enabled : false - -					function displayBriefly() { -						if ( enabled ) { animation.restart() } -					} -  					anchors.fill: parent -					opacity: 0 -					color: settings.terminal.overlayBackground - -					SequentialAnimation { -						id: animation - -						ScriptAction { -							script: overlay.opacity = 0.8 -						} -						PauseAnimation { -							duration: 500 -						} - -						NumberAnimation { -							target:   overlay -							property: "opacity" - -							easing.type: Easing.InSine -							duration: 300 -							from:     0.8 -							to:       0 -						} -					} - -					Text { -						anchors { -							horizontalCenter: overlay.horizontalCenter -							verticalCenter:   overlay.verticalCenter -						} - -						font { -							family:    settings.terminal.fontFamily -							pointSize: settings.terminal.fontSize * 2 -						} -						color: settings.terminal.overlayFontColor - -						text: { -							return item.lines -							     + 'x' -							     + Math.floor(terminal.width / terminal.fontMetrics.width); -						} -					} +					text: item.lines +					    + 'x' +					    + Math.floor(terminal.width / terminal.fontMetrics.width)  				}  				MouseArea { diff --git a/src/widget/Overlay.qml b/src/widget/Overlay.qml new file mode 100644 index 0000000..2a50219 --- /dev/null +++ b/src/widget/Overlay.qml @@ -0,0 +1,61 @@ +import QtQuick 2.0 + +Item { +	id: item + +	property bool enabled : false + +	property alias text : content.text + +	function displayBriefly() { +		if ( enabled ) { +			animation.restart() +		} +	} + +	Rectangle { +		id: background + +		anchors.fill: parent + +		opacity: 0 +		color: settings.terminal.overlayBackground + +		SequentialAnimation { +			id: animation + +			ScriptAction { +				script: background.opacity = 0.8 +			} + +			PauseAnimation { +				duration: 500 +			} + +			NumberAnimation { +				target:   background +				property: "opacity" + +				easing.type: Easing.InSine +				duration: 300 +				from:     0.8 +				to:       0 +			} +		} + +		Text { +			id: content + +			anchors { +				horizontalCenter: background.horizontalCenter +				verticalCenter:   background.verticalCenter +			} + +			font { +				family:    settings.terminal.fontFamily +				pointSize: settings.terminal.fontSize * 2 +			} +			color: settings.terminal.overlayFontColor +		} +	} +} | 
