listbox.go
func (l *ListBox) PartialFindItem(text string, caseSensitive bool) int {
	if !caseSensitive {
		text = strings.ToLower(text)
	}

	for idx, itm := range l.items {
		if caseSensitive {
			if strings.HasPrefix(itm, text) {
				return idx
			}
		} else {
			low := strings.ToLower(itm)
			if strings.HasPrefix(low, text) {
				return idx
			}
		}
	}

	return -1
}
func (l *ListBox) PartialFindItem(text string, caseSensitive bool) int {
	if !caseSensitive {
		text = strings.ToLower(text)
	}

	for idx, itm := range l.items {
		if caseSensitive {
			if strings.HasPrefix(itm, text) {
				return idx
			}
		} else {
			low := strings.ToLower(itm)
			if strings.HasPrefix(low, text) {
				return idx
			}
		}
	}

	return -1
}
// PartialFindItem looks for an item in list which text starts from
// the given substring, by default the search is casesensitive.
// Returns item number in item list or -1 if nothing is found.