diff --git a/src/monitor/view/OverlayCenter.qml b/src/monitor/view/OverlayCenter.qml new file mode 100644 --- /dev/null +++ b/src/monitor/view/OverlayCenter.qml @@ -0,0 +1,19 @@ +import QtQuick.Controls 1.3 +import QtQuick.Controls.Styles 1.3 +import QtQuick 2.0 + +Item { + id: overlay + Rectangle { + color: root.overlayColor + width: parent.width + height: 1 + anchors.centerIn: parent + } + Rectangle { + color: root.overlayColor + height: parent.height + width: 1 + anchors.centerIn: parent + } +} diff --git a/src/monitor/view/OverlayCenterDiagonal.qml b/src/monitor/view/OverlayCenterDiagonal.qml new file mode 100644 --- /dev/null +++ b/src/monitor/view/OverlayCenterDiagonal.qml @@ -0,0 +1,33 @@ +import QtQuick.Controls 1.3 +import QtQuick.Controls.Styles 1.3 +import QtQuick 2.0 + +Item { + id: overlay + property double diagonalLenght: Math.sqrt(Math.pow(parent.height, 2) + Math.pow(parent.width, 2)) + + function degreesRotation(width, height) { + var a = height/width; + var b = Math.sqrt(1 + Math.pow(a, 2)); + var angle = Math.acos(Math.pow(a,2) / (a * b)); + return angle * (180 / Math.PI); + } + + Rectangle { + color: root.overlayColor + width: overlay.diagonalLenght + height: 1 + rotation: degreesRotation(parent.height, parent.width) + anchors.centerIn: parent + antialiasing: true + } + + Rectangle { + color: root.overlayColor + height: overlay.diagonalLenght + width: 1 + rotation: degreesRotation(parent.width, parent.height) + anchors.centerIn: parent + antialiasing: true + } +} diff --git a/src/monitor/view/OverlayThirds.qml b/src/monitor/view/OverlayThirds.qml new file mode 100644 --- /dev/null +++ b/src/monitor/view/OverlayThirds.qml @@ -0,0 +1,33 @@ +import QtQuick.Controls 1.3 +import QtQuick.Controls.Styles 1.3 +import QtQuick 2.0 + +Item { + id: overlay + // Vertical segments + Rectangle { + color: root.overlayColor + height: parent.height + width: 1 + x: parent.width / 3 + } + Rectangle { + color: root.overlayColor + height: parent.height + width: 1 + x: (parent.width / 3 ) * 2 + } + // Horizontal segments + Rectangle { + color: root.overlayColor + width: parent.width + height: 1 + y: parent.height / 3 + } + Rectangle { + color: root.overlayColor + width: parent.width + height: 1 + y: (parent.height / 3) * 2 + } +} diff --git a/src/monitor/view/kdenliveclipmonitor.qml b/src/monitor/view/kdenliveclipmonitor.qml --- a/src/monitor/view/kdenliveclipmonitor.qml +++ b/src/monitor/view/kdenliveclipmonitor.qml @@ -51,7 +51,7 @@ } function switchOverlay() { - if (controller.overlayType >= 2) { + if (controller.overlayType >= 5) { controller.overlayType = 0 } else { controller.overlayType = controller.overlayType + 1; @@ -99,6 +99,15 @@ case 2:{ return "OverlayMinimal.qml"; } + case 3:{ + return "OverlayCenter.qml"; + } + case 4:{ + return "OverlayCenterDiagonal.qml"; + } + case 5:{ + return "OverlayThirds.qml"; + } } } } diff --git a/src/monitor/view/kdenlivemonitor.qml b/src/monitor/view/kdenlivemonitor.qml --- a/src/monitor/view/kdenlivemonitor.qml +++ b/src/monitor/view/kdenlivemonitor.qml @@ -51,7 +51,7 @@ } function switchOverlay() { - if (controller.overlayType >= 2) { + if (controller.overlayType >= 5) { controller.overlayType = 0 } else { controller.overlayType = controller.overlayType + 1; @@ -99,6 +99,15 @@ case 2:{ return "OverlayMinimal.qml"; } + case 3:{ + return "OverlayCenter.qml"; + } + case 4:{ + return "OverlayCenterDiagonal.qml"; + } + case 5:{ + return "OverlayThirds.qml"; + } } } } diff --git a/src/uiresources.qrc b/src/uiresources.qrc --- a/src/uiresources.qrc +++ b/src/uiresources.qrc @@ -15,6 +15,9 @@ monitor/view/MonitorRuler.qml monitor/view/OverlayStandard.qml monitor/view/OverlayMinimal.qml + monitor/view/OverlayCenter.qml + monitor/view/OverlayCenterDiagonal.qml + monitor/view/OverlayThirds.qml timeline2/view/qml/timeline.qml timeline2/view/qml/TrackHead.qml timeline2/view/qml/Track.qml