internal void SetScrollViewMode(ScrollViewMode scrollViewMode) { RemoveFromClassList(verticalVariantUssClassName); RemoveFromClassList(horizontalVariantUssClassName); RemoveFromClassList(verticalHorizontalVariantUssClassName); RemoveFromClassList(scrollVariantUssClassName); switch (scrollViewMode) { case ScrollViewMode.Vertical: AddToClassList(verticalVariantUssClassName); AddToClassList(scrollVariantUssClassName); break; case ScrollViewMode.Horizontal: AddToClassList(horizontalVariantUssClassName); AddToClassList(scrollVariantUssClassName); break; case ScrollViewMode.VerticalAndHorizontal: AddToClassList(scrollVariantUssClassName); AddToClassList(verticalHorizontalVariantUssClassName); break; } }
public ScrollView(ScrollViewMode scrollViewMode) { AddToClassList(ussClassName); AddToClassList(scrollVariantUssClassName); contentViewport = new VisualElement() { name = "unity-content-viewport" }; contentViewport.AddToClassList(viewportUssClassName); contentViewport.RegisterCallback <GeometryChangedEvent>(OnGeometryChanged); contentViewport.RegisterCallback <AttachToPanelEvent>(OnAttachToPanel); contentViewport.RegisterCallback <DetachFromPanelEvent>(OnDetachFromPanel); contentViewport.pickingMode = PickingMode.Ignore; hierarchy.Add(contentViewport); m_ContentContainer = new VisualElement() { name = "unity-content-container" }; m_ContentContainer.RegisterCallback <GeometryChangedEvent>(OnGeometryChanged); m_ContentContainer.AddToClassList(contentUssClassName); m_ContentContainer.usageHints = UsageHints.GroupTransform; m_ContentContainer.pickingMode = PickingMode.Ignore; contentViewport.Add(m_ContentContainer); SetScrollViewMode(scrollViewMode); const int defaultMinScrollValue = 0; const int defaultMaxScrollValue = int.MaxValue; horizontalScroller = new Scroller(defaultMinScrollValue, defaultMaxScrollValue, (value) => { scrollOffset = new Vector2(value, scrollOffset.y); UpdateContentViewTransform(); }, SliderDirection.Horizontal) { viewDataKey = "HorizontalScroller", visible = false }; horizontalScroller.AddToClassList(hScrollerUssClassName); hierarchy.Add(horizontalScroller); verticalScroller = new Scroller(defaultMinScrollValue, defaultMaxScrollValue, (value) => { scrollOffset = new Vector2(scrollOffset.x, value); UpdateContentViewTransform(); }, SliderDirection.Vertical) { viewDataKey = "VerticalScroller", visible = false }; verticalScroller.AddToClassList(vScrollerUssClassName); hierarchy.Add(verticalScroller); touchScrollBehavior = TouchScrollBehavior.Clamped; RegisterCallback <WheelEvent>(OnScrollWheel); scrollOffset = Vector2.zero; }
internal void SetScrollViewMode(ScrollViewMode scrollViewMode) { contentContainer.RemoveFromClassList(hContentVariantUssClassName); contentContainer.RemoveFromClassList(vContentVariantUssClassName); contentContainer.RemoveFromClassList(vhContentVariantUssClassName); contentViewport.RemoveFromClassList(hViewportVariantUssClassName); contentViewport.RemoveFromClassList(vViewportVariantUssClassName); contentViewport.RemoveFromClassList(vhViewportVariantUssClassName); switch (scrollViewMode) { case ScrollViewMode.Vertical: contentContainer.AddToClassList(vContentVariantUssClassName); contentViewport.AddToClassList(vViewportVariantUssClassName); break; case ScrollViewMode.Horizontal: contentContainer.AddToClassList(hContentVariantUssClassName); contentViewport.AddToClassList(hViewportVariantUssClassName); break; case ScrollViewMode.VerticalAndHorizontal: contentContainer.AddToClassList(vhContentVariantUssClassName); contentViewport.AddToClassList(vhViewportVariantUssClassName); break; } }
public ScrollView(ScrollViewMode scrollViewMode) { AddToClassList(ussClassName); contentViewport = new VisualElement() { name = "unity-content-viewport" }; contentViewport.AddToClassList(viewportUssClassName); contentViewport.RegisterCallback <GeometryChangedEvent>(OnGeometryChanged); hierarchy.Add(contentViewport); m_ContentContainer = new VisualElement() { name = "unity-content-container" }; m_ContentContainer.RegisterCallback <GeometryChangedEvent>(OnGeometryChanged); m_ContentContainer.AddToClassList(contentUssClassName); m_ContentContainer.renderHint = RenderHint.GroupTransform; contentViewport.Add(m_ContentContainer); SetScrollViewMode(scrollViewMode); const int defaultMinScrollValue = 0; const int defaultMaxScrollValue = 100; horizontalScroller = new Scroller(defaultMinScrollValue, defaultMaxScrollValue, (value) => { scrollOffset = new Vector2(value, scrollOffset.y); UpdateContentViewTransform(); }, SliderDirection.Horizontal) { viewDataKey = "HorizontalScroller", visible = false }; horizontalScroller.AddToClassList(hScrollerUssClassName); hierarchy.Add(horizontalScroller); verticalScroller = new Scroller(defaultMinScrollValue, defaultMaxScrollValue, (value) => { scrollOffset = new Vector2(scrollOffset.x, value); UpdateContentViewTransform(); }, SliderDirection.Vertical) { viewDataKey = "VerticalScroller", visible = false }; verticalScroller.AddToClassList(vScrollerUssClassName); hierarchy.Add(verticalScroller); RegisterCallback <WheelEvent>(OnScrollWheel); scrollOffset = Vector2.zero; }
public ScrollView(ScrollViewMode scrollViewMode) { base.AddToClassList(ScrollView.ussClassName); this.contentViewport = new VisualElement { name = "unity-content-viewport" }; this.contentViewport.AddToClassList(ScrollView.viewportUssClassName); this.contentViewport.RegisterCallback <GeometryChangedEvent>(new EventCallback <GeometryChangedEvent>(this.OnGeometryChanged), TrickleDown.NoTrickleDown); this.contentViewport.RegisterCallback <AttachToPanelEvent>(new EventCallback <AttachToPanelEvent>(this.OnAttachToPanel), TrickleDown.NoTrickleDown); this.contentViewport.RegisterCallback <DetachFromPanelEvent>(new EventCallback <DetachFromPanelEvent>(this.OnDetachFromPanel), TrickleDown.NoTrickleDown); base.hierarchy.Add(this.contentViewport); this.m_ContentContainer = new VisualElement { name = "unity-content-container" }; this.m_ContentContainer.RegisterCallback <GeometryChangedEvent>(new EventCallback <GeometryChangedEvent>(this.OnGeometryChanged), TrickleDown.NoTrickleDown); this.m_ContentContainer.AddToClassList(ScrollView.contentUssClassName); this.m_ContentContainer.usageHints = UsageHints.GroupTransform; this.contentViewport.Add(this.m_ContentContainer); this.SetScrollViewMode(scrollViewMode); this.horizontalScroller = new Scroller(0f, 2.14748365E+09f, delegate(float value) { this.scrollOffset = new Vector2(value, this.scrollOffset.y); this.UpdateContentViewTransform(); }, SliderDirection.Horizontal) { viewDataKey = "HorizontalScroller", visible = false }; this.horizontalScroller.AddToClassList(ScrollView.hScrollerUssClassName); base.hierarchy.Add(this.horizontalScroller); this.verticalScroller = new Scroller(0f, 2.14748365E+09f, delegate(float value) { this.scrollOffset = new Vector2(this.scrollOffset.x, value); this.UpdateContentViewTransform(); }, SliderDirection.Vertical) { viewDataKey = "VerticalScroller", visible = false }; this.verticalScroller.AddToClassList(ScrollView.vScrollerUssClassName); base.hierarchy.Add(this.verticalScroller); this.touchScrollBehavior = ScrollView.TouchScrollBehavior.Clamped; base.RegisterCallback <WheelEvent>(new EventCallback <WheelEvent>(this.OnScrollWheel), TrickleDown.NoTrickleDown); this.scrollOffset = Vector2.zero; }