Class KFGUI_ScrollBarV_CD extends KFGUI_ScrollBarV; function DrawMenu() { local float A; local byte i; if(bDisabled) Canvas.SetDrawColor(5, 5, 5, 0); else if(bFocused || bGrabbedScroller) Canvas.SetDrawColor(30, 30, 30, 160); else Canvas.SetDrawColor(30, 30, 30, 160); Owner.CurrentStyle.DrawRectBox (0.f, 0.f, CompPos[2], CompPos[3], 4); if(bDisabled) return; if(bVertical) i = 3; else i = 2; SliderScale = FMax(PageStep * (CompPos[i] - 32.f) / (MaxRange + PageStep),CalcButtonScale); if(bGrabbedScroller) { // Track mouse. if(bVertical) A = Owner.MousePosition.Y - CompPos[1] - GrabbedOffset; else A = Owner.MousePosition.X - CompPos[0] - GrabbedOffset; A /= ((CompPos[i]-SliderScale) / float(MaxRange)); SetValue(A); } A = float(CurrentScroll) / float(MaxRange); ButtonOffset = A*(CompPos[i]-SliderScale); if(bGrabbedScroller) Canvas.SetDrawColor(90,90,90,255); else if(bFocused) Canvas.SetDrawColor(65,65,65,255); else Canvas.SetDrawColor(40,40,40,255); if(bVertical) Owner.CurrentStyle.DrawRectBox (0.f, ButtonOffset, CompPos[2], SliderScale, 4); else Owner.CurrentStyle.DrawRectBox (ButtonOffset, 0.f, SliderScale, CompPos[3], 4); } defaultproperties { }