mirror of
https://github.com/overte-org/overte.git
synced 2025-08-07 18:30:42 +02:00
Only the first checkbox in a group has vertical space before it
This commit is contained in:
parent
a41f409e33
commit
2d250e2f64
3 changed files with 29 additions and 3 deletions
|
@ -14,7 +14,7 @@ import "../../controls-uit"
|
||||||
|
|
||||||
Preference {
|
Preference {
|
||||||
id: root
|
id: root
|
||||||
height: checkBox.implicitHeight
|
height: spacer.height + Math.max(hifi.dimensions.controlLineHeight, checkBox.implicitHeight)
|
||||||
|
|
||||||
Component.onCompleted: {
|
Component.onCompleted: {
|
||||||
checkBox.checked = preference.value;
|
checkBox.checked = preference.value;
|
||||||
|
@ -26,9 +26,24 @@ Preference {
|
||||||
preference.save();
|
preference.save();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Item {
|
||||||
|
id: spacer
|
||||||
|
anchors {
|
||||||
|
top: parent.top
|
||||||
|
left: parent.left
|
||||||
|
right: parent.right
|
||||||
|
}
|
||||||
|
height: isFirstCheckBox ? hifi.dimensions.controlInterlineHeight : 0
|
||||||
|
}
|
||||||
|
|
||||||
CheckBox {
|
CheckBox {
|
||||||
id: checkBox
|
id: checkBox
|
||||||
anchors.fill: parent
|
anchors {
|
||||||
|
top: spacer.bottom
|
||||||
|
left: parent.left
|
||||||
|
right: parent.right
|
||||||
|
bottom: parent.bottom
|
||||||
|
}
|
||||||
text: root.label
|
text: root.label
|
||||||
colorScheme: hifi.colorSchemes.dark
|
colorScheme: hifi.colorSchemes.dark
|
||||||
}
|
}
|
||||||
|
|
|
@ -16,6 +16,7 @@ Item {
|
||||||
anchors { left: parent.left; right: parent.right }
|
anchors { left: parent.left; right: parent.right }
|
||||||
property var preference;
|
property var preference;
|
||||||
property string label: preference ? preference.name : "";
|
property string label: preference ? preference.name : "";
|
||||||
|
property bool isFirstCheckBox;
|
||||||
Component.onCompleted: {
|
Component.onCompleted: {
|
||||||
if (preference) {
|
if (preference) {
|
||||||
preference.load();
|
preference.load();
|
||||||
|
|
|
@ -73,6 +73,7 @@ Preference {
|
||||||
property var buttonBuilder: Component { ButtonPreference { } }
|
property var buttonBuilder: Component { ButtonPreference { } }
|
||||||
property var comboBoxBuilder: Component { ComboBoxPreference { } }
|
property var comboBoxBuilder: Component { ComboBoxPreference { } }
|
||||||
property var preferences: []
|
property var preferences: []
|
||||||
|
property int checkBoxCount: 0
|
||||||
|
|
||||||
function buildPreferences() {
|
function buildPreferences() {
|
||||||
var categoryPreferences = Preferences.preferencesByCategory[root.name];
|
var categoryPreferences = Preferences.preferencesByCategory[root.name];
|
||||||
|
@ -89,40 +90,49 @@ Preference {
|
||||||
var builder;
|
var builder;
|
||||||
switch (preference.type) {
|
switch (preference.type) {
|
||||||
case Preference.Editable:
|
case Preference.Editable:
|
||||||
|
checkBoxCount = 0;
|
||||||
builder = editableBuilder;
|
builder = editableBuilder;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Preference.Browsable:
|
case Preference.Browsable:
|
||||||
|
checkBoxCount = 0;
|
||||||
builder = browsableBuilder;
|
builder = browsableBuilder;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Preference.Spinner:
|
case Preference.Spinner:
|
||||||
|
checkBoxCount = 0;
|
||||||
builder = spinnerBuilder;
|
builder = spinnerBuilder;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Preference.Slider:
|
case Preference.Slider:
|
||||||
|
checkBoxCount = 0;
|
||||||
builder = sliderBuilder;
|
builder = sliderBuilder;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Preference.Checkbox:
|
case Preference.Checkbox:
|
||||||
|
checkBoxCount++;
|
||||||
|
console.log("####### checkBoxCount = " + checkBoxCount);
|
||||||
builder = checkboxBuilder;
|
builder = checkboxBuilder;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Preference.Avatar:
|
case Preference.Avatar:
|
||||||
|
checkBoxCount = 0;
|
||||||
builder = avatarBuilder;
|
builder = avatarBuilder;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Preference.Button:
|
case Preference.Button:
|
||||||
|
checkBoxCount = 0;
|
||||||
builder = buttonBuilder;
|
builder = buttonBuilder;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Preference.ComboBox:
|
case Preference.ComboBox:
|
||||||
|
checkBoxCount = 0;
|
||||||
builder = comboBoxBuilder;
|
builder = comboBoxBuilder;
|
||||||
break;
|
break;
|
||||||
};
|
};
|
||||||
|
|
||||||
if (builder) {
|
if (builder) {
|
||||||
preferences.push(builder.createObject(contentContainer, { preference: preference }));
|
preferences.push(builder.createObject(contentContainer, { preference: preference, isFirstCheckBox: (checkBoxCount === 1) }));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue