linphone-desktop/tests/ui/modules/Common/Popup/DropDownDynamicMenu.qml
2016-12-28 11:11:41 +01:00

32 lines
959 B
QML

import QtQuick 2.7
import Utils 1.0
// =============================================================================
// Menu which supports `ListView`.
// =============================================================================
AbstractDropDownMenu {
// Can be computed, but for performance usage, it must be given
// in attribute.
property int entryHeight
property int maxMenuHeight
function _computeHeight () {
Utils.assert(_content != null && _content.length > 0, '`_content` cannot be null and must exists.')
var list = _content[0]
Utils.assert(list != null, 'No list found.')
Utils.assert(Utils.qmlTypeof(list, 'QQuickListView'), 'No list view parameter.')
var height = list.count * entryHeight
if (list.headerPositioning === ListView.OverlayHeader) {
height += list.headerItem.height
}
return (maxMenuHeight !== undefined && height > maxMenuHeight)
? maxMenuHeight
: height
}
}