package com.gameminers.glasspane.testharness; import gminers.glasspane.GlassPane; import gminers.glasspane.component.PaneBox; import gminers.glasspane.component.PaneScrollPanel; import gminers.glasspane.component.button.PaneButton; import gminers.glasspane.component.text.PaneLabel; import gminers.kitchensink.Hues; public class PaneTestScrollPanels extends GlassPane { public PaneTestScrollPanels() { setName("Scroll Panels"); add(PaneButton.createDoneButton()); PaneButton flipButton = PaneTestHarness.createFlipButton(); flipButton.setEnabled(false); add(PaneTestHarness.createGithubButton("PaneTestScrollPanels.java"), flipButton); PaneScrollPanel basic = new PaneScrollPanel(); basic.add(PaneLabel.createTitleLabel("Basic")); basic.setAutoPositionX(true); basic.setRelativeX(0); basic.setRelativeXOffset(10); basic.setAutoResizeHeight(true); basic.setRelativeHeightOffset(-50); basic.setWidth(100); basic.setY(10); generateContent(basic); add(basic); PaneScrollPanel unshadowed = new PaneScrollPanel(); unshadowed.add(PaneLabel.createTitleLabel("No Shadow")); unshadowed.setAutoPositionX(true); unshadowed.setRelativeX(0.5); unshadowed.setRelativeXOffset(-50); unshadowed.setAutoResizeHeight(true); unshadowed.setRelativeHeightOffset(-50); unshadowed.setShadowed(false); unshadowed.setWidth(100); unshadowed.setHeight(80); unshadowed.setY(10); generateContent(unshadowed); add(unshadowed); PaneScrollPanel deepShadow = new PaneScrollPanel(); deepShadow.add(PaneLabel.createTitleLabel("Deep Shadow")); deepShadow.setAutoPositionX(true); deepShadow.setRelativeX(1); deepShadow.setRelativeXOffset(-110); deepShadow.setAutoResizeHeight(true); deepShadow.setRelativeHeightOffset(-50); deepShadow.setShadowDepth(40); deepShadow.setWidth(100); deepShadow.setHeight(80); deepShadow.setY(10); generateContent(deepShadow); add(deepShadow); } private void generateContent(PaneScrollPanel panel) { for (int i = 0; i < 360; i++) { PaneBox box = new PaneBox(Hues.hueToRGB(i) | 0xFF000000); box.setY(20 + (i * 4)); box.setWidth(80); box.setHeight(4); box.setX(10); panel.add(box); } } }