// //© 2016 Brady Worldwide, Inc. All Rights Reserved // import QtQuick 2.0 import BCControls 1.0 import "." MenuListView { id: listWithNextLevel2Lines delegate: listElement signal switchState(int itemIndex, int state) Component { id: listElement Column { anchors { left: parent.left right: parent.right } Item { property string testId: modelData[BCSettings.menuItemNameIndex] id: titleDescriptionAndValue anchors { left: parent.left right: parent.right leftMargin: BCStyle.normalSpacingSize } height: textField.realTextHeight Column { id: textField anchors.verticalCenter: parent.verticalCenter property int paintedTextHeight: firstLineText.paintedHeight + secondLineText.paintedHeight property int realTextHeight: paintedTextHeight > BCStyle.touchTargetDimensionsMin ? paintedTextHeight : BCStyle.touchTargetDimensionsMin height: paintedTextHeight // Having the anchors defined here avoids the core dump on Linux // anchors.right: rightSideContainer.left // anchors.rightMargin: BCStyle.normalSpacingSize // anchors.left: parent.left anchors { // Uncommenting the below on Linux causes segmentation fault // on Linux quick compiler. right: rightSideContainer.left rightMargin: BCStyle.normalSpacingSize left: parent.left } Text { id: firstLineText font.pixelSize: BCStyle.standardFontPixelSize font.family: BCStyle.screenFont color: BCStyle.menuFirstLineText text: modelData[BCSettings.menuItemNameIndex] } Text { id: secondLineText anchors { right: parent.right left: parent.left } font.pixelSize: BCStyle.detailTextPixelSize font.family: BCStyle.screenFont color: BCStyle.menuSecondLineText text: modelData[BCSettings.menuItemDescriptionIndex] wrapMode: Text.WordWrap } } // Column Rectangle { id: rightSideContainer anchors.right: parent.right anchors.rightMargin: BCStyle.normalSpacingSize + nextButton.arrowButtonWidth height: parent.height width: valueField.paintedWidth visible: !switchButton.visible Text { id: valueField verticalAlignment: Text.AlignVCenter horizontalAlignment: Text.AlignRight font.pixelSize: BCStyle.standardFontPixelSize font.family: BCStyle.screenFont color: BCStyle.menuFirstLineText text: modelData[BCSettings.menuItemDisplayValueIndex] minimumPixelSize: 11 fontSizeMode: Text.HorizontalFit width: paintedWidth height: parent.height } } // Item BCMenuNextButton { id: nextButton waiting: modelData[BCSettings.menuItemWaitingPropertyIndex] enabled: (modelData[BCSettings.menuItemButtonIndex] !== BCSettings.menuNoButtonIndex || modelData[BCSettings.menuItemButtonIndex] !== BCSettings.menuSwitchButtonIndex) && !switchButton.visible onClicked: listWithNextLevel2Lines.selected(modelData[BCSettings.menuItemButtonIndex]) anchors.rightMargin: BCStyle.normalSpacingSize } // BCMenuNextButton BCDynamicSwitchButton { id: switchButton visible: modelData[BCSettings.menuItemButtonIndex] === BCSettings.menuSwitchButtonIndex anchors { verticalCenter: parent.verticalCenter right: parent.right rightMargin: BCStyle.smallSpacingSize } on: modelData[BCSettings.menuItemDisplayValueIndex] onSwitchState: listWithNextLevel2Lines.switchState(index, state) } } // Item BCMenuItemDivider { anchors.rightMargin: BCStyle.normalSpacingSize anchors.leftMargin: BCStyle.normalSpacingSize } // BCMenuItemDivider } // Column } // Component } // MenuListView