You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: scrollview.go
    path of file: ./repos/wails/v2/internal/frontend/desktop/windows/winc
    
    the code of the file until where you have to start completion: //go:build windows

/*
 * Copyright (C) 2019 The Winc Aut
    
func (sv *ScrollView) scroll(sb int32, cmd uint16) int {
	var pos int32
	var si w32.SCROLLINFO
	si.CbSize = uint32(unsafe.Sizeof(si))
	si.FMask = w32.SIF_PAGE | w32.SIF_POS | w32.SIF_RANGE | w32.SIF_TRACKPOS

	w32.GetScrollInfo(sv.hwnd, sb, &si)
	pos = si.NPos

	switch cmd {
	case w32.SB_LINELEFT: // == win.SB_LINEUP
		pos -= 20

	case w32.SB_LINERIGHT: // == win.SB_LINEDOWN
		pos += 20

	case w32.SB_PAGELEFT: // == win.SB_PAGEUP
		pos -= int32(si.NPage)

	case w32.SB_PAGERIGHT: // == win.SB_PAGEDOWN
		pos += int32(si.NPage)

	case w32.SB_THUMBTRACK:
		pos = si.NTrackPos
	}

	if pos < 0 {
		pos = 0
	}
	if pos > si.NMax+1-int32(si.NPage) {
		pos = si.NMax + 1 - int32(si.NPage)
	}

	si.FMask = w32.SIF_POS
	si.NPos = pos
	w32.SetScrollInfo(sv.hwnd, sb, &si, true)

	return -int(pos)
}