Browse Source

added export setup

pull/2/head
Skycoder42 7 years ago
parent
commit
b6d399b83a
  1. 92
      src/imports/mvvmdatasyncquick/ExportSetupView.qml
  2. 9
      src/imports/mvvmdatasyncquick/mvvmdatasyncquick.pro
  3. 4
      src/imports/mvvmdatasyncquick/qmldir
  4. 3
      src/mvvmdatasyncquick/ExportSetupView.qml
  5. 1
      src/mvvmdatasyncquick/qtmvvmdatasyncquick_module.qrc

92
src/imports/mvvmdatasyncquick/ExportSetupView.qml

@ -0,0 +1,92 @@
import QtQuick 2.10
import QtQuick.Controls 2.3
import QtQuick.Layouts 1.3
import QtQuick.Window 2.2
import de.skycoder42.QtMvvm.Core 1.0
import de.skycoder42.QtMvvm.Quick 1.0
import de.skycoder42.QtMvvm.DataSync.Core 1.0
Dialog {
id: _exportSetupView
property PExportSetupViewModel viewModel: null
property real extraHeight: 0
property real baseWidth: 300
x: parent ? (parent.width - width) / 2 : 0
y: parent ? deltaY() : 0
width: parent ? Math.min(Math.max(implicitWidth, baseWidth), parent.width - 24) : implicitWidth
height: parent ? Math.min(implicitHeight, parent.height - 24) : implicitWidth
modal: true
focus: true
function deltaY() { //TODO move to common js file?
var unscaled = Qt.inputMethod.keyboardRectangle.height / Screen.devicePixelRatio;
var availHeight = (parent.height + extraHeight) - unscaled - 24; //margins
var rawDelta = (Math.max(0, availHeight - height) / 2);
return rawDelta + 12 - extraHeight; //spacing
}
title: viewModel.label
ColumnLayout {
id: _layout
anchors.fill: parent
CheckBox {
id: _trustBox
text: qsTr("Trusted")
Layout.fillWidth: true
MvvmBinding {
viewModel: _exportSetupView.viewModel
viewModelProperty: "trusted"
view: _trustBox
viewProperty: "checked"
}
}
CheckBox {
id: _includeBox
text: qsTr("Include Server")
Layout.fillWidth: true
MvvmBinding {
viewModel: _exportSetupView.viewModel
viewModelProperty: "includeServer"
view: _includeBox
viewProperty: "checked"
}
}
Label {
text: qsTr("Password:")
Layout.fillWidth: true
color: _passwordEdit.focus ? _passwordEdit.selectionColor : palette.text
opacity: _passwordEdit.focus ? 1 : 0.5
enabled: viewModel.trusted
}
TextField {
id: _passwordEdit
echoMode: TextInput.Password
Layout.fillWidth: true
enabled: viewModel.trusted
MvvmBinding {
viewModel: _exportSetupView.viewModel
viewModelProperty: "password"
view: _passwordEdit
viewProperty: "text"
type: MvvmBinding.OneWayToViewModel
}
}
}
standardButtons: Dialog.Ok | Dialog.Cancel
onAccepted: viewModel.completeSetup()
Component.onCompleted: standardButton(Dialog.Ok).enabled = Qt.binding(function(){ return viewModel.valid; })
}

9
src/imports/mvvmdatasyncquick/mvvmdatasyncquick.pro

@ -17,7 +17,11 @@ SOURCES += \
QML_FILES += \
SubButton.qml \
DataSyncView.qml \
IdentityEditView.qml
IdentityEditView.qml \
ExportSetupView.qml
RESOURCES += \
qtmvvmdatasyncquick_plugin.qrc
OTHER_FILES += qmldir
@ -40,6 +44,3 @@ generate_qmltypes {
mfirst.depends += qmltypes
QMAKE_EXTRA_TARGETS += mfirst
}
RESOURCES += \
qtmvvmdatasyncquick_plugin.qrc

4
src/imports/mvvmdatasyncquick/qmldir

@ -7,5 +7,7 @@ depends de.skycoder42.QtMvvm.Quick 1.0
internal SubButton SubButton.qml
DataSyncView 1.0 DataSyncView.qml
IdentityEditView 1.0 IdentityEditView.qml
ExportSetupView 1.0 ExportSetupView.qml
DataSyncView 1.0 DataSyncView.qml

3
src/mvvmdatasyncquick/ExportSetupView.qml

@ -0,0 +1,3 @@
import de.skycoder42.QtMvvm.DataSync.Quick 1.0 as QtMvvm
QtMvvm.ExportSetupView {}

1
src/mvvmdatasyncquick/qtmvvmdatasyncquick_module.qrc

@ -2,5 +2,6 @@
<qresource prefix="/qtmvvm/views">
<file>DataSyncView.qml</file>
<file>IdentityEditView.qml</file>
<file>ExportSetupView.qml</file>
</qresource>
</RCC>

Loading…
Cancel
Save