List of usage examples for com.badlogic.gdx.scenes.scene2d.ui ScrollPane ScrollPane
public ScrollPane(Actor widget, ScrollPaneStyle style)
From source file:com.ray3k.skincomposer.dialog.DialogColors.java
License:Open Source License
public DialogColors(final Skin skin, String styleName, StyleProperty styleProperty, boolean selectingForTintedDrawable, DialogFactory dialogFactory, JsonData jsonData, ProjectData projectData, AtlasData atlasData, Main main, DialogColorsListener listener) { super("", skin, styleName); this.dialogFactory = dialogFactory; this.jsonData = jsonData; this.projectData = projectData; this.atlasData = atlasData; this.main = main; this.listener = listener; this.skin = skin; this.styleProperty = styleProperty; this.selectingForTintedDrawable = selectingForTintedDrawable; colors = jsonData.getColors();/* w w w. j a v a 2 s. c om*/ getContentTable().defaults().expandX(); if (styleProperty != null) { Label label = new Label("Select a color...", skin, "title"); label.setAlignment(Align.center); getContentTable().add(label); getContentTable().row(); } else if (selectingForTintedDrawable) { Label label = new Label("Select a color for tinted drawable...", skin, "title"); label.setAlignment(Align.center); getContentTable().add(label); getContentTable().row(); } else { Label label = new Label("Colors", skin, "title"); label.setAlignment(Align.center); getContentTable().add(label); getContentTable().row(); } Table table = new Table(); table.defaults().pad(2.0f); table.add(new Label("Sort by: ", skin)).padLeft(20.0f); selectBox = new SelectBox<String>(skin); selectBox.setItems(new String[] { "A-Z", "Z-A" }); selectBox.addListener(new ChangeListener() { @Override public void changed(ChangeListener.ChangeEvent event, Actor actor) { sortBySelectedMode(); } }); selectBox.addListener(main.getHandListener()); table.add(selectBox); TextButton imageButton = new TextButton("New Color", skin, "new"); imageButton.addListener(new ChangeListener() { @Override public void changed(ChangeListener.ChangeEvent event, Actor actor) { showColorPicker(); } }); imageButton.addListener(main.getHandListener()); table.add(imageButton).expandX().left(); getContentTable().add(table).left().expandX(); getContentTable().row(); colorTable = new Table(); populate(); table = new Table(); table.add(colorTable).pad(5.0f); scrollPane = new ScrollPane(table, skin); scrollPane.setFadeScrollBars(false); getContentTable().add(scrollPane).grow(); if (styleProperty != null) { button("Clear Color", true); button("Cancel", false); getButtonTable().getCells().get(0).getActor().addListener(main.getHandListener()); getButtonTable().getCells().get(1).getActor().addListener(main.getHandListener()); } else if (selectingForTintedDrawable) { button("Cancel", false); getButtonTable().getCells().get(0).getActor().addListener(main.getHandListener()); } else { button("Close", false); getButtonTable().getCells().get(0).getActor().addListener(main.getHandListener()); } getButtonTable().padBottom(15.0f); key(Keys.ESCAPE, false); }
From source file:com.ray3k.skincomposer.dialog.DialogDrawables.java
License:Open Source License
public void populate() { getContentTable().clear();/* w w w. j av a2s. c o m*/ getButtonTable().padBottom(15.0f); if (property == null) { getContentTable().add(new Label("Drawables", getSkin(), "title")); } else { getContentTable().add(new Label("Select a Drawables", getSkin(), "title")); } getContentTable().row(); Table table = new Table(getSkin()); table.defaults().pad(10.0f); getContentTable().add(table).growX(); table.add("Sort by:"); sortSelectBox = new SelectBox(getSkin()); sortSelectBox.setItems("A-Z", "Z-A", "Oldest", "Newest"); sortSelectBox.addListener(new ChangeListener() { @Override public void changed(ChangeListener.ChangeEvent event, Actor actor) { sortBySelectedMode(); } }); sortSelectBox.addListener(main.getHandListener()); table.add(sortSelectBox); TextButton textButton = new TextButton("Add Drawable", getSkin(), "new"); textButton.addListener(new ChangeListener() { @Override public void changed(ChangeListener.ChangeEvent event, Actor actor) { Gdx.graphics.setSystemCursor(Cursor.SystemCursor.Arrow); newDrawableDialog(); } }); textButton.addListener(main.getHandListener()); table.add(textButton); table.add(new Label("Zoom:", getSkin())).right().expandX(); zoomSlider = new Slider(0, 3, 1, false, getSkin()); zoomSlider.addListener(new ChangeListener() { @Override public void changed(ChangeListener.ChangeEvent event, Actor actor) { refreshDrawableDisplay(); } }); zoomSlider.addListener(main.getHandListener()); table.add(zoomSlider); getContentTable().row(); contentGroup = new HorizontalGroup(); contentGroup.center().wrap(true).space(5.0f).wrapSpace(5.0f).rowAlign(Align.left); scrollPane = new ScrollPane(contentGroup, getSkin()); scrollPane.setFadeScrollBars(false); scrollPane.setFlickScroll(false); getContentTable().add(scrollPane).grow(); sortBySelectedMode(); getContentTable().row(); if (property != null) { button("Clear Drawable", true); button("Cancel", false); getButtonTable().getCells().first().getActor().addListener(main.getHandListener()); getButtonTable().getCells().get(1).getActor().addListener(main.getHandListener()); } else { button("Close", false); getButtonTable().getCells().first().getActor().addListener(main.getHandListener()); } }
From source file:com.ray3k.skincomposer.dialog.DialogFonts.java
License:Open Source License
public DialogFonts(final Skin skin, String styleName, StyleProperty styleProperty, JsonData jsonData, ProjectData projectData, AtlasData atlasData, Main main, EventListener listener) { super("", skin, styleName); this.jsonData = jsonData; this.projectData = projectData; this.atlasData = atlasData; this.main = main; this.listener = listener; this.skin = skin; this.styleProperty = styleProperty; fonts = jsonData.getFonts();//from w ww .j a v a 2 s. c o m drawables = atlasData.getDrawables(); fontMap = new ObjectMap<>(); produceAtlas(); filesDroppedListener = (Array<FileHandle> files) -> { Iterator<FileHandle> iter = files.iterator(); while (iter.hasNext()) { FileHandle file = iter.next(); if (file.isDirectory() || !file.name().toLowerCase().endsWith(".fnt")) { iter.remove(); } } if (files.size > 0) { fontNameDialog(files, 0); } }; main.getDesktopWorker().addFilesDroppedListener(filesDroppedListener); setFillParent(true); if (styleProperty != null) { getContentTable().add(new Label("Select a Font...", skin, "title")); getContentTable().row(); } else { getContentTable().add(new Label("Fonts", skin, "title")); getContentTable().row(); } Table table = new Table(); table.defaults().pad(2.0f); table.add(new Label("Sort by: ", skin)).padLeft(20.0f); selectBox = new SelectBox<>(skin); selectBox.setItems(new String[] { "A-Z", "Z-A", "Oldest", "Newest" }); selectBox.addListener(new ChangeListener() { @Override public void changed(ChangeListener.ChangeEvent event, Actor actor) { sortBySelectedMode(); } }); selectBox.addListener(main.getHandListener()); table.add(selectBox); TextButton imageButton = new TextButton("New Font", skin, "new"); imageButton.addListener(new ChangeListener() { @Override public void changed(ChangeListener.ChangeEvent event, Actor actor) { Gdx.graphics.setSystemCursor(Cursor.SystemCursor.Arrow); newFontDialog(); } }); imageButton.addListener(main.getHandListener()); table.add(imageButton).expandX(); getContentTable().add(table).expandX().left(); getContentTable().row(); key(Keys.ESCAPE, false); if (styleProperty != null) { button("Clear Font", true); button("Cancel", false); getButtonTable().getCells().first().getActor().addListener(main.getHandListener()); getButtonTable().getCells().get(1).getActor().addListener(main.getHandListener()); } else { button("Close", false); getButtonTable().getCells().first().getActor().addListener(main.getHandListener()); } getButtonTable().padBottom(15.0f); fontsTable = new Table(); table = new Table(); table.add(fontsTable).pad(5.0f); scrollPane = new ScrollPane(table, skin); scrollPane.setFadeScrollBars(false); getContentTable().add(scrollPane).grow(); }
From source file:com.ray3k.skincomposer.RootTable.java
License:Open Source License
private void addStyleProperties(final Table left) { Label label = new Label("Style Properties", getSkin(), "title"); left.add(label);//from w w w . j av a2s.c o m left.row(); Table table = new Table(); table.defaults().padLeft(10.0f).padRight(10.0f).growX(); stylePropertiesScrollPane = new ScrollPane(table, getSkin()); stylePropertiesScrollPane.setFadeScrollBars(false); stylePropertiesScrollPane.setFlickScroll(false); stylePropertiesScrollPane.addListener(scrollPaneListener); stage.setScrollFocus(stylePropertiesScrollPane); left.add(stylePropertiesScrollPane).grow().padTop(10.0f).padBottom(10.0f); //gather all scrollPaneStyles Array<StyleData> scrollPaneStyles = main.getProjectData().getJsonData().getClassStyleMap() .get(ScrollPane.class); //gather all listStyles Array<StyleData> listStyles = main.getProjectData().getJsonData().getClassStyleMap().get(List.class); //gather all labelStyles Array<StyleData> labelStyles = main.getProjectData().getJsonData().getClassStyleMap().get(Label.class); if (styleProperties != null) { for (StyleProperty styleProperty : styleProperties) { table.row(); if (styleProperty.type == Color.class) { BrowseField browseField; if (styleProperty.optional) { browseField = new BrowseField((String) styleProperty.value, styleProperty.name, bfColorStyle); } else { browseField = new BrowseField((String) styleProperty.value, styleProperty.name, bfColorStyleR); } browseField.addListener(main.getHandListener()); table.add(browseField).padTop(20.0f); browseField.addListener(new StylePropertyChangeListener(styleProperty, browseField)); } else if (styleProperty.type == BitmapFont.class) { BrowseField browseField; if (styleProperty.optional) { browseField = new BrowseField((String) styleProperty.value, styleProperty.name, bfFontStyle); } else { browseField = new BrowseField((String) styleProperty.value, styleProperty.name, bfFontStyleR); } browseField.addListener(main.getHandListener()); table.add(browseField).padTop(20.0f); browseField.addListener(new StylePropertyChangeListener(styleProperty, browseField)); } else if (styleProperty.type == Drawable.class) { BrowseField browseField; if (styleProperty.optional) { browseField = new BrowseField((String) styleProperty.value, styleProperty.name, bfDrawableStyle); } else { browseField = new BrowseField((String) styleProperty.value, styleProperty.name, bfDrawableStyleR); } browseField.addListener(main.getHandListener()); table.add(browseField).padTop(20.0f); browseField.addListener(new StylePropertyChangeListener(styleProperty, browseField)); } else if (styleProperty.type == Float.TYPE) { if (styleProperty.optional) { label = new Label(styleProperty.name, getSkin()); } else { label = new Label(styleProperty.name, getSkin(), "required"); } table.add(label).padTop(20.0f).fill(false).expand(false, false); table.row(); Spinner spinner = new Spinner((Double) styleProperty.value, 1.0, false, Spinner.Orientation.HORIZONTAL, spinnerStyle); spinner.getTextField().addListener(main.getIbeamListener()); spinner.getButtonMinus().addListener(main.getHandListener()); spinner.getButtonPlus().addListener(main.getHandListener()); table.add(spinner); spinner.addListener(new StylePropertyChangeListener(styleProperty, spinner)); } else if (styleProperty.type == ScrollPaneStyle.class) { if (styleProperty.optional) { label = new Label(styleProperty.name, getSkin()); } else { label = new Label(styleProperty.name, getSkin(), "required"); } table.add(label).padTop(20.0f).fill(false).expand(false, false); table.row(); SelectBox<StyleData> selectBox = new SelectBox<>(getSkin()); selectBox.setItems(scrollPaneStyles); selectBox.addListener(main.getHandListener()); if (styleProperty.value != null) { String name = ((String) styleProperty.value); int index = 0; for (StyleData styleData : scrollPaneStyles) { if (styleData.name.equals(name)) { break; } else { index++; } } if (index < scrollPaneStyles.size) { selectBox.setSelectedIndex(index); } } table.add(selectBox); selectBox.addListener(new StylePropertyChangeListener(styleProperty, selectBox)); } else if (styleProperty.type == ListStyle.class) { if (styleProperty.optional) { label = new Label(styleProperty.name, getSkin()); } else { label = new Label(styleProperty.name, getSkin(), "required"); } table.add(label).padTop(20.0f).fill(false).expand(false, false); table.row(); SelectBox<StyleData> selectBox = new SelectBox<>(getSkin()); selectBox.setItems(listStyles); selectBox.addListener(main.getHandListener()); if (styleProperty.value != null) { String name = ((String) styleProperty.value); int index = 0; for (StyleData styleData : listStyles) { if (styleData.name.equals(name)) { break; } else { index++; } } if (index < listStyles.size) { selectBox.setSelectedIndex(index); } } table.add(selectBox); selectBox.addListener(new StylePropertyChangeListener(styleProperty, selectBox)); } else if (styleProperty.type == LabelStyle.class) { if (styleProperty.optional) { label = new Label(styleProperty.name, getSkin()); } else { label = new Label(styleProperty.name, getSkin(), "required"); } table.add(label).padTop(20.0f).fill(false).expand(false, false); table.row(); SelectBox<StyleData> selectBox = new SelectBox<>(getSkin()); selectBox.setItems(labelStyles); selectBox.addListener(main.getHandListener()); if (styleProperty.value != null) { String name = ((String) styleProperty.value); int index = 0; for (StyleData styleData : labelStyles) { if (styleData.name.equals(name)) { break; } else { index++; } } if (index < labelStyles.size) { selectBox.setSelectedIndex(index); } } table.add(selectBox); selectBox.addListener(new StylePropertyChangeListener(styleProperty, selectBox)); } else if (styleProperty.type == CustomStyle.class) { //todo: implement custom styles... } table.row(); } } }
From source file:com.ray3k.skincomposer.RootTable.java
License:Open Source License
private void addPreview(Table top, InputListener scrollPaneListener) { Label label = new Label("Preview", getSkin(), "title"); top.add(label);//from w ww. j a v a2 s . c om top.row(); previewTable = new Table(getSkin()); previewTable.setBackground("white"); ScrollPane scrollPane = new ScrollPane(previewTable, getSkin()); scrollPane.setFadeScrollBars(false); scrollPane.setFlickScroll(false); scrollPane.addListener(scrollPaneListener); top.add(scrollPane).grow().padTop(10.0f).padBottom(10.0f); refreshPreview(); }
From source file:com.ray3k.skincomposer.RootTable.java
License:Open Source License
private void addPreviewProperties(Table bottom, InputListener scrollPaneListener) { Label label = new Label("Preview Properties", getSkin(), "title"); bottom.add(label);/* ww w .j a v a 2 s.c o m*/ bottom.row(); previewPropertiesTable = new Table(); previewPropertiesTable.defaults().pad(5.0f); ScrollPane scrollPane = new ScrollPane(previewPropertiesTable, getSkin()); scrollPane.setFadeScrollBars(false); scrollPane.setFlickScroll(false); scrollPane.addListener(scrollPaneListener); bottom.add(scrollPane).grow().padTop(10.0f).padBottom(10.0f); refreshPreviewProperties(); }
From source file:com.ray3k.skincomposer.RootTable.java
License:Open Source License
public void refreshPreview() { if (previewTable != null) { previewTable.clear();//from w ww . j av a2 s . com previewTable.setColor((Color) previewProperties.get("bgcolor")); for (BitmapFont font : previewFonts) { font.dispose(); } if (classSelectBox.getSelectedIndex() >= 0) { StyleData styleData = getSelectedStyle(); Class clazz = Main.BASIC_CLASSES[classSelectBox.getSelectedIndex()]; if (!styleData.hasMandatoryFields()) { Label label; if (clazz.equals(SelectBox.class)) { label = new Label( "Please fill all mandatory fields\n(Highlighted on the left)\n\nscrollStyle and listStyle\nmust already be defined", getSkin()); } else if (clazz.equals(TextTooltip.class)) { label = new Label( "Please fill all mandatory fields\n(Highlighted on the left)\n\nlabel must already be defined", getSkin()); } else { label = new Label("Please fill all mandatory fields\n(Highlighted on the left)", getSkin()); } label.setAlignment(Align.center); previewTable.add(label); } else if (styleData.hasAllNullFields()) { Label label; label = new Label( "All fields are empty!\nEmpty classes are not exported\nAdd style properties in the menu to the left", getSkin()); label.setAlignment(Align.center); previewTable.add(label); } else { Actor widget = null; if (clazz.equals(Button.class)) { Button.ButtonStyle style = createPreviewStyle(Button.ButtonStyle.class, styleData); widget = new Button(style); ((Button) widget).setDisabled((boolean) previewProperties.get("disabled")); widget.addListener(main.getHandListener()); } else if (clazz.equals(CheckBox.class)) { CheckBox.CheckBoxStyle style = createPreviewStyle(CheckBox.CheckBoxStyle.class, styleData); widget = new CheckBox("", style); ((CheckBox) widget).setDisabled((boolean) previewProperties.get("disabled")); ((CheckBox) widget).setText((String) previewProperties.get("text")); widget.addListener(main.getHandListener()); } else if (clazz.equals(ImageButton.class)) { ImageButtonStyle style = createPreviewStyle(ImageButtonStyle.class, styleData); widget = new ImageButton(style); ((ImageButton) widget).setDisabled((boolean) previewProperties.get("disabled")); widget.addListener(main.getHandListener()); } else if (clazz.equals(ImageTextButton.class)) { ImageTextButton.ImageTextButtonStyle style = createPreviewStyle( ImageTextButton.ImageTextButtonStyle.class, styleData); widget = new ImageTextButton("", style); ((ImageTextButton) widget).setDisabled((boolean) previewProperties.get("disabled")); ((ImageTextButton) widget).setText((String) previewProperties.get("text")); widget.addListener(main.getHandListener()); } else if (clazz.equals(Label.class)) { LabelStyle style = createPreviewStyle(LabelStyle.class, styleData); widget = new Label("", style); ((Label) widget).setText((String) previewProperties.get("text")); } else if (clazz.equals(List.class)) { ListStyle style = createPreviewStyle(ListStyle.class, styleData); widget = new List(style); Array<String> items = new Array<>(((String) previewProperties.get("text")).split("\\n")); ((List) widget).setItems(items); widget.addListener(main.getHandListener()); } else if (clazz.equals(ProgressBar.class)) { ProgressBar.ProgressBarStyle style = createPreviewStyle(ProgressBar.ProgressBarStyle.class, styleData); widget = new ProgressBar((float) (double) previewProperties.get("minimum"), (float) (double) previewProperties.get("maximum"), (float) (double) previewProperties.get("increment"), (boolean) previewProperties.get("orientation"), style); ((ProgressBar) widget).setValue((float) (double) previewProperties.get("value")); ((ProgressBar) widget).setDisabled((boolean) previewProperties.get("disabled")); } else if (clazz.equals(ScrollPane.class)) { ScrollPaneStyle style = createPreviewStyle(ScrollPaneStyle.class, styleData); Label label = new Label("", getSkin()); widget = new ScrollPane(label, style); ((ScrollPane) widget) .setScrollbarsOnTop((boolean) previewProperties.get("scrollbarsOnTop")); ((ScrollPane) widget).setScrollBarPositions( (boolean) previewProperties.get("hScrollBarPosition"), (boolean) previewProperties.get("vScrollBarPosition")); ((ScrollPane) widget).setScrollingDisabled( (boolean) previewProperties.get("hScrollDisabled"), (boolean) previewProperties.get("vScrollDisabled")); ((ScrollPane) widget).setForceScroll((boolean) previewProperties.get("forceHscroll"), (boolean) previewProperties.get("forceVscroll")); ((ScrollPane) widget) .setVariableSizeKnobs((boolean) previewProperties.get("variableSizeKnobs")); ((ScrollPane) widget).setOverscroll((boolean) previewProperties.get("hOverscroll"), (boolean) previewProperties.get("vOverscroll")); ((ScrollPane) widget).setFadeScrollBars((boolean) previewProperties.get("fadeScroll")); ((ScrollPane) widget).setSmoothScrolling((boolean) previewProperties.get("smoothScroll")); ((ScrollPane) widget).setFlickScroll((boolean) previewProperties.get("flickScroll")); ((ScrollPane) widget).setClamp((boolean) previewProperties.get("clamp")); label.setText((String) previewProperties.get("text")); } else if (clazz.equals(SelectBox.class)) { SelectBox.SelectBoxStyle style = createPreviewStyle(SelectBox.SelectBoxStyle.class, styleData); widget = new SelectBox(style); ((SelectBox) widget).setDisabled((boolean) previewProperties.get("disabled")); Array<String> items = new Array<>(((String) previewProperties.get("text")).split("\\n")); ((SelectBox) widget).setItems(items); widget.addListener(main.getHandListener()); } else if (clazz.equals(Slider.class)) { Slider.SliderStyle style = createPreviewStyle(Slider.SliderStyle.class, styleData); widget = new Slider((float) (double) previewProperties.get("minimum"), (float) (double) previewProperties.get("maximum"), (float) (double) previewProperties.get("increment"), (boolean) previewProperties.get("orientation"), style); ((Slider) widget).setDisabled((boolean) previewProperties.get("disabled")); widget.addListener(main.getHandListener()); } else if (clazz.equals(SplitPane.class)) { SplitPane.SplitPaneStyle style = createPreviewStyle(SplitPane.SplitPaneStyle.class, styleData); Label label1 = new Label("", getSkin()); Label label2 = new Label("", getSkin()); widget = new SplitPane(label1, label2, (boolean) previewProperties.get("orientation"), style); label1.setText((String) previewProperties.get("text")); label2.setText((String) previewProperties.get("text")); if ((boolean) previewProperties.get("orientation")) { widget.addListener(vSplitPaneDragListener); widget.addListener(vSplitPaneInputListener); } else { widget.addListener(hSplitPaneDragListener); widget.addListener(hSplitPaneInputListener); } } else if (clazz.equals(TextButton.class)) { TextButtonStyle style = createPreviewStyle(TextButtonStyle.class, styleData); widget = new TextButton("", style); ((TextButton) widget).setDisabled((boolean) previewProperties.get("disabled")); ((TextButton) widget).setText((String) previewProperties.get("text")); widget.addListener(main.getHandListener()); } else if (clazz.equals(TextField.class)) { TextFieldStyle style = createPreviewStyle(TextFieldStyle.class, styleData); widget = new TextField("", style); ((TextField) widget).setFocusTraversal(false); ((TextField) widget).setDisabled((boolean) previewProperties.get("disabled")); ((TextField) widget).setPasswordMode((boolean) previewProperties.get("passwordMode")); ((TextField) widget).setAlignment((int) previewProperties.get("alignment")); ((TextField) widget).setText((String) previewProperties.get("text")); ((TextField) widget).setMessageText((String) previewProperties.get("message")); String string = (String) previewProperties.get("password"); if (string.length() > 0) { ((TextField) widget).setPasswordCharacter(string.charAt(0)); } widget.addListener(main.getIbeamListener()); } else if (clazz.equals(TextTooltip.class)) { TextTooltip.TextTooltipStyle style = createPreviewStyle(TextTooltip.TextTooltipStyle.class, styleData); TooltipManager manager = new TooltipManager(); manager.animations = false; manager.initialTime = 0.0f; manager.resetTime = 0.0f; manager.subsequentTime = 0.0f; manager.hideAll(); manager.instant(); TextTooltip toolTip = new TextTooltip((String) previewProperties.get("text"), manager, style); widget = new Label("Hover over me", getSkin()); widget.addListener(toolTip); } else if (clazz.equals(Touchpad.class)) { Touchpad.TouchpadStyle style = createPreviewStyle(Touchpad.TouchpadStyle.class, styleData); widget = new Touchpad(0, style); widget.addListener(main.getHandListener()); } else if (clazz.equals(Tree.class)) { Tree.TreeStyle style = createPreviewStyle(Tree.TreeStyle.class, styleData); widget = new Tree(style); String[] lines = { "this", "is", "a", "test" }; Tree.Node parentNode = null; for (String line : lines) { Label label = new Label(line, getSkin()); Tree.Node node = new Tree.Node(label); if (parentNode == null) { ((Tree) widget).add(node); } else { parentNode.add(node); } parentNode = node; } widget.addListener(main.getHandListener()); } else if (clazz.equals(Window.class)) { Window.WindowStyle style = createPreviewStyle(Window.WindowStyle.class, styleData); Label sampleText = new Label("", getSkin()); sampleText.setText((String) previewProperties.get("text")); widget = new Window((String) previewProperties.get("title"), style); ((Window) widget).add(sampleText); } if (widget != null) { switch ((int) previewProperties.get("size")) { case (0): previewTable.add(widget).size(10.0f); previewSizeSelectBox.setItems(DEFAULT_SIZES); break; case (1): previewTable.add(widget); previewSizeSelectBox.setItems(DEFAULT_SIZES); break; case (2): previewTable.add(widget).size(200.0f); previewSizeSelectBox.setItems(DEFAULT_SIZES); break; case (3): previewTable.add(widget).growX(); previewSizeSelectBox.setItems(DEFAULT_SIZES); break; case (4): previewTable.add(widget).growY(); previewSizeSelectBox.setItems(DEFAULT_SIZES); break; case (5): previewTable.add(widget).grow(); previewSizeSelectBox.setItems(DEFAULT_SIZES); break; case (6): Actor addWidget = widget; TextField widthField = new TextField("", getSkin()); TextField heightField = new TextField("", getSkin()); System.out.println("trigger"); Dialog dialog = new Dialog("Enter dimensions...", getSkin()) { @Override protected void result(Object object) { if ((boolean) object) { previewTable.add(addWidget).size(Integer.parseInt(widthField.getText()), Integer.parseInt(heightField.getText())); Array<String> items = new Array<>(DEFAULT_SIZES); items.add(widthField.getText() + "x" + heightField.getText()); previewProperties.put("sizeX", Integer.parseInt(widthField.getText())); previewProperties.put("sizeY", Integer.parseInt(heightField.getText())); previewSizeSelectBox.setItems(items); previewSizeSelectBox.setSelectedIndex(7); } else { previewSizeSelectBox.setSelectedIndex(1); } } }; dialog.getTitleTable().getCells().first().padLeft(5.0f); dialog.text("Enter the preview dimensions: "); dialog.getContentTable().getCells().first().pad(10.0f); dialog.getContentTable().row(); Table sizeTable = new Table(); sizeTable.add(widthField).padLeft(10.0f); sizeTable.add(new Label(" x ", getSkin())); sizeTable.add(heightField).padRight(10.0f); dialog.getContentTable().add(sizeTable); dialog.getButtonTable().defaults().padBottom(10.0f).minWidth(50.0f); dialog.button("OK", true); dialog.button("Cancel", false); dialog.key(Input.Keys.ESCAPE, false); dialog.key(Input.Keys.ENTER, true); dialog.show(stage); stage.setKeyboardFocus(widthField); break; case (7): previewTable.add(widget).size((int) previewProperties.get("sizeX"), (int) previewProperties.get("sizeY")); break; } } } } } }
From source file:com.strategames.catchdastars.screens.editor.GameEditorScreen.java
License:Open Source License
@Override protected void setupUI(Stage stage) { Game game = getGameEngine().getGame(); Skin skin = getSkin();/*from w ww . j av a2 s . c o m*/ addMenuItem("Play game"); addMenuItem("Save game"); addMenuItem("Delete game"); addMenuItem("Export game"); Array<Level> localLevels = LevelLoader.loadAllLocalLevels(game.getGameMetaData()); game.clearLevels(); for (Level level : localLevels) { level.setGameMetaData(game.getGameMetaData()); game.setLevel(level); } this.levelButtonsGrid = new GridLayout(); //Center button grid in scrollpane // this.levelButtonsGrid.setPosition((stage.getWidth() / 2f)-12f, 180f); this.levelButtonsGrid.setElementSize(gridElementSize.x, gridElementSize.y); this.levelButtonsGrid.setCenter(true); this.emptyLevelImage = new Pixmap((int) gridElementSize.x, (int) gridElementSize.y, Format.RGBA8888); this.emptyLevelImage.setColor(0, 1, 0, 0.3f); this.emptyLevelImage.fill(); this.scrollPane = new ScrollPane(this.levelButtonsGrid, skin); this.scrollPane.setHeight(400f); this.scrollPane.setWidth(stage.getWidth()); this.scrollPane.setPosition(0, 200f); stage.addActor(this.scrollPane); TextButton button = new TextButton("Main menu", skin); button.setWidth(stage.getWidth()); button.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { getGameEngine().showMainMenu(); } }); stage.addActor(button); }
From source file:com.strategames.catchdastars.screens.editor.SelectGameScreen.java
License:Open Source License
@Override protected void setupUI(final Stage stage) { addMenuItem("Delete all games"); //Gameloader to loadSync all games Array<GameMetaData> games = GameLoader.loadAllOriginalGames(); this.gamesButtonsTable = new Table(); fillGamesButtonsTable(games);//from w w w .j a v a2 s . c o m //Show list of games as vertically scrollable buttonlist ScrollPane scrollPane = new ScrollPane(this.gamesButtonsTable, getSkin()); scrollPane.setHeight(400f); scrollPane.setWidth(stage.getWidth()); scrollPane.setPosition(0, 200f); stage.addActor(scrollPane); Table table = new Table(getSkin()); table.setWidth(stage.getWidth()); TextButton button = new TextButton("Main menu", getSkin()); button.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { getGameEngine().showMainMenu(); } }); table.add(button).fillX().expandX(); button = new TextButton("New game", getSkin()); button.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { handleNewGameButtonClicked(); } }); table.add(button).fillX().expandX(); table.bottom(); table.setHeight(button.getHeight()); stage.addActor(table); }
From source file:com.strategames.catchdastars.screens.game.SelectGameScreen.java
License:Open Source License
@Override protected void setupUI(final Stage stage) { //Gameloader to loadSync all games Array<GameMetaData> games = GameLoader.loadAllOriginalGames(); if (games.size < 1) { ErrorDialog dialog = new ErrorDialog(stage, "No games available", getSkin()); dialog.create();/*w w w. ja v a2 s.c om*/ dialog.setOnClickListener(new OnClickListener() { @Override public void onClick(Dialog dialog, int which) { getGameEngine().stopScreen(); dialog.remove(); } }); dialog.show(); return; } this.gamesButtonsTable = new Table(); fillGamesButtonsTable(games); //Show list of games as vertically scrollable buttonlist ScrollPane scrollPane = new ScrollPane(this.gamesButtonsTable, getSkin()); scrollPane.setHeight(400f); scrollPane.setWidth(stage.getWidth()); scrollPane.setPosition(0, 200f); stage.addActor(scrollPane); TextButton button = new TextButton("Main menu", getSkin()); button.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { getGameEngine().showMainMenu(); } }); button.setWidth(stage.getWidth()); button.bottom(); stage.addActor(button); }