![]() |
2017-04-20
, 10:05
|
|
Posts: 433 |
Thanked: 727 times |
Joined on Oct 2012
@ Costa Blanca, Espaņa
|
#12
|
Solution:
Code:import QtQuick 2.0 import Sailfish.Silica 1.0 Page { id: page MouseArea { id: dragArea width: 270 height: 270 Connections { target: dragArea.parent onHeightChanged: { var xx = dragArea.x var yy = dragArea.y if (dragArea.parent.width > dragArea.parent.height) { dragArea.x = yy dragArea.y = dragArea.parent.height - dragArea.height - xx } else { dragArea.x = dragArea.parent.width - dragArea.width - yy dragArea.y = xx } } } Rectangle { anchors.fill: parent color: "red" } drag.target: dragArea drag.minimumX: 0 drag.minimumY: 0 drag.maximumY: parent.height - height drag.maximumX: parent.width - width } }
The Following User Says Thank You to Markkyboy For This Useful Post: | ||
![]() |
2017-04-20
, 13:13
|
|
Posts: 6,436 |
Thanked: 12,701 times |
Joined on Nov 2011
@ Ängelholm, Sweden
|
#13
|
The Following User Says Thank You to coderus For This Useful Post: | ||
![]() |
2017-04-20
, 13:48
|
|
Posts: 394 |
Thanked: 1,341 times |
Joined on Dec 2009
|
#14
|
The Following User Says Thank You to velox For This Useful Post: | ||
![]() |
2017-04-20
, 13:50
|
|
Posts: 433 |
Thanked: 727 times |
Joined on Oct 2012
@ Costa Blanca, Espaņa
|
#15
|
obviously you should integrate it with lipstick yourself. i have no idea what are you doing.
import QtQuick 2.0 import Sailfish.Silica 1.0 import org.nemomobile.time 1.0 import org.nemomobile.lipstick 0.1 import "../main" Item { id: clock anchors.fill: parent property alias time: timeText.time property bool color: Theme.primaryColor property bool followPeekPosition property alias updatesEnabled: timeText.updatesEnabled Rectangle { id: rect width: 270; height: 270 color: "#55000000" anchors { top: parent.top topMargin: Theme.paddingMedium horizontalCenter: parent.horizontalCenter } Drag.active: dragArea.drag.active ClockItem { id: timeText color: Theme.primaryColor anchors { top: rect.top horizontalCenter: rect.horizontalCenter } text: { updatesEnabled: timeText.time minimumPixelSize: 10 fontPixelSize: 76 fontSizeMode: Text.Fit Qt.formatTime(new Date(), "<b>hh</b>") } } Text { id: date color: Theme.primaryColor anchors { top: timeText.baseline topMargin: Theme.paddingSmall horizontalCenter: rect.horizontalCenter } text: { updatesEnabled: timeText.time minimumPixelSize: 10 fontPixelSize: 76 fontSizeMode: Text.Fit Qt.formatDate(new Date(), "ddd dd MMM") } } ClockItem { id: minutes color: Theme.primaryColor anchors { top: date.baseline topMargin: -Theme.paddingMedium horizontalCenter: rect.horizontalCenter } text: { updatesEnabled: timeText.time minimumPixelSize: 10 fontPixelSize: 76 fontSizeMode: Text.Fit Qt.formatTime(new Date(), "<b>mm</b>") } } MouseArea { id: dragArea anchors.fill: parent drag.target: rect drag.axis: Drag.XandYAxis drag.minimumX: 0 drag.maximumX: 270 drag.minimumY: -10 drag.maximumY: 600 onPressed: { rect.anchors.top = undefined rect.anchors.topMargin = undefined rect.anchors.horizontalCenter = undefined } } } }
The Following User Says Thank You to Markkyboy For This Useful Post: | ||
![]() |
2017-04-20
, 13:52
|
|
Posts: 433 |
Thanked: 727 times |
Joined on Oct 2012
@ Costa Blanca, Espaņa
|
#16
|
Indeed, your very first sentence in the first post was "I have a draggable rectangle on a page" which, I think, led most people to assume you meant the Page Component from Silica. If that's not the case, you're going to have to adapt it yourself.
The Following User Says Thank You to Markkyboy For This Useful Post: | ||
![]() |
2017-04-21
, 14:39
|
|
Posts: 433 |
Thanked: 727 times |
Joined on Oct 2012
@ Costa Blanca, Espaņa
|
#17
|
MouseArea { id: dragArea anchors.fill: parent drag.target: rect drag.filterChildren: true drag.axis: Drag.XandYAxis drag.minimumX: 10 drag.maximumX: lockScreen.width -10 - rect.width drag.minimumY: -10 drag.maximumY: lockScreen.height -25 - rect.height -50 onPressed: { rect.anchors.top = undefined rect.anchors.topMargin = undefined rect.anchors.horizontalCenter = undefined }
import QtQuick 2.0 import Sailfish.Silica 1.0 import org.nemomobile.time 1.0 import org.nemomobile.lipstick 0.1 import "../main" Item { id: clock anchors.fill: parent property alias time: timeText.time property bool color: Theme.primaryColor property bool followPeekPosition property alias updatesEnabled: timeText.updatesEnabled width: Math.max(timeText.width, date.width) height: timeText.font.pixelSize + date.font.pixelSize + Theme.paddingMedium * 2 baselineOffset: timeText.y + timeText.baselineOffset Rectangle { id: rect width: 350; height: 220 radius: 90 color: Theme.highlightDimmerColor border.color: Theme.secondaryHighlightColor border.width: +3 anchors { top: lockScreen.top topMargin: Theme.paddingSmall horizontalCenter: parent.horizontalCenter } Drag.active: dragArea.drag.active ClockItem { id: timeText color: Theme.primaryColor font { pixelSize: Theme.fontSizeHuge * 2.0; family: Theme.fontFamilyHeading } anchors { top: rect.top topMargin: Theme.paddingSmall bottomMargin: -timeText.font.pixelSize horizontalCenter: rect.horizontalCenter } } Text { id: date color: Theme.primaryColor anchors { top: timeText.baseline topMargin: Theme.paddingSmall horizontalCenter: rect.horizontalCenter } font { pixelSize: Theme.fontSizeLarge * 1.1; family: Theme.fontFamily } text: { updatesEnabled: timeText.time Qt.formatDate(new Date(), "ddd dd MMM") } } MouseArea { id: dragArea anchors.fill: parent drag.target: rect drag.filterChildren: true drag.axis: Drag.XandYAxis drag.minimumX: 10 drag.maximumX: lockScreen.width -10 - rect.width drag.minimumY: -10 drag.maximumY: lockScreen.height -25 - rect.height -50 onPressed: { rect.anchors.top = undefined rect.anchors.topMargin = undefined rect.anchors.horizontalCenter = undefined } } } }
The Following 3 Users Say Thank You to Markkyboy For This Useful Post: | ||
Telegram | Openrepos | GitHub | Revolut donations