Example usage for com.badlogic.gdx.scenes.scene2d.ui Image setScaling

List of usage examples for com.badlogic.gdx.scenes.scene2d.ui Image setScaling

Introduction

In this page you can find the example usage for com.badlogic.gdx.scenes.scene2d.ui Image setScaling.

Prototype

public void setScaling(Scaling scaling) 

Source Link

Usage

From source file:com.bladecoder.engineeditor.Editor.java

License:Apache License

@Override
public void create() {
    skin = new Skin(Gdx.files.internal(SKIN));

    EditorLogger.setDebug();//from   w ww  . j  a va2s  .co m
    EditorLogger.debug("CREATE");
    Ctx.project = new Project();
    Message.init(skin);
    Ctx.assetManager = new EditorAssetManager();

    scnEditor = new ScnEditor(skin);
    scnEditor.setBackground("background");
    skin.getFont("default-font").getData().markupEnabled = true;

    /*** STAGE SETUP ***/
    stage = new Stage(new ScreenViewport());
    Gdx.input.setInputProcessor(stage);

    // RIGHT PANEL
    ScenePanel scenePanel = new ScenePanel(skin);
    ActorPanel actorPanel = new ActorPanel(skin);

    Table rightPanel = new Table(skin);
    rightPanel.top().left();
    rightPanel.add(actorPanel).expand().fill().left();
    rightPanel.setBackground("background");

    SplitPane splitPaneRight = new SplitPane(scnEditor, rightPanel, false, skin);

    splitPaneRight.setSplitAmount(0.75f);

    // LEFT PANEL
    ProjectPanel projectPanel = new ProjectPanel(skin);
    Image img = new Image(Ctx.assetManager.getIcon("title"));
    img.setScaling(Scaling.none);
    img.setAlign(Align.left);

    Table leftPanel = new Table(skin);
    leftPanel.top().left().padLeft(10);
    leftPanel.add(img).expand().fill().padBottom(20).padTop(20).padLeft(0).left();
    leftPanel.row();
    leftPanel.add(new ProjectToolbar(skin)).expandX().fill().left();
    leftPanel.row();
    leftPanel.add(projectPanel).expand().fill().left();
    leftPanel.row();
    leftPanel.add(scenePanel).expand().fill().left();
    leftPanel.setBackground("background");

    SplitPane splitPaneLeft = new SplitPane(leftPanel, splitPaneRight, false, skin);
    splitPaneLeft.setFillParent(true);
    splitPaneLeft.setSplitAmount(0.25f);
    stage.addActor(splitPaneLeft);

    // LOAD LAST OPEN PROJECT
    String lastProject = Ctx.project.getEditorConfig().getProperty(Project.LAST_PROJECT_PROP, "");

    if (!lastProject.isEmpty() && new File(lastProject).exists()) {
        try {
            EditorLogger.debug("Loading last project: " + lastProject);
            Ctx.project.loadProject(new File(lastProject));
        } catch (Exception e) {
            EditorLogger.debug("Error loading last project: " + e.getMessage());
            Ctx.project.closeProject();
            e.printStackTrace();
        }
    }

    stage.setScrollFocus(scnEditor.getScnWidget());
    stage.setKeyboardFocus(scnEditor.getScnWidget());

    TooltipManager.getInstance().instant();
}

From source file:com.kotcrab.vis.editor.module.project.assetsmanager.AtlasItem.java

License:Apache License

public AtlasItem(String relativeAtlasPath, AtlasRegion region) {
    super(VisUI.getSkin());
    this.relativeAtlasPath = relativeAtlasPath;
    this.region = region;

    assetDescriptor = new AtlasRegionAsset(relativeAtlasPath, region.name);

    setTouchable(Touchable.enabled);/*from  ww w .j av a2s.  c om*/
    setBackground("menu-bg");

    Image img = new Image(region);
    img.setScaling(Scaling.fit);
    add(img).expand().fill().row();

    VisLabel name = new VisLabel(region.name, "small");
    name.setWrap(true);
    name.setAlignment(Align.center);
    add(name).expandX().fillX();
}

From source file:com.kotcrab.vis.editor.module.project.assetsmanager.FileItem.java

License:Apache License

private void createContent() {
    String ext = file.extension();
    String relativePath = fileAccess.relativizeToAssetsFolder(file);

    boolean texture = ProjectPathUtils.isTexture(file);
    boolean atlas = ProjectPathUtils.isTextureAtlas(file);

    if (file.isDirectory()) {
        type = AssetType.DIRECTORY;/* w  w  w  . jav  a2s . co m*/

        Drawable icon;
        AssetDirectoryDescriptor desc = assetsMetadata.getAsDirectoryDescriptor(file);
        if (desc != null) {
            icon = desc.getAssetsViewIcon();
        } else {
            icon = Icons.FOLDER_MEDIUM.drawable();
        }
        add(new VisImage(icon, Scaling.fillX)).row();

        name = new VisLabel(file.nameWithoutExtension());
    }

    if (ProjectPathUtils.isTrueTypeFont(file)) {
        createDefaultView(AssetType.TTF_FONT, "TTF Font", true);
        return;
    }

    if (ProjectPathUtils.isBitmapFont(file)) {
        createDefaultView(AssetType.BMP_FONT_FILE, "BMP Font", true);
        return;
    }

    if (ProjectPathUtils.isBitmapFontTexture(file)) {
        createDefaultView(AssetType.BMP_FONT_TEXTURE, "BMP Font Texture", true);
        return;
    }

    if (ProjectPathUtils.isTextureAtlasImage(file)) {
        createDefaultView(AssetType.TEXTURE_ATLAS_IMAGE, "TextureAtlas Image", true);
        return;
    }

    if (texture || atlas) {
        type = texture ? AssetType.TEXTURE : AssetType.TEXTURE_ATLAS;

        //don't create region preview for files excluded from texture cache
        AssetDirectoryDescriptor desc = assetsMetadata.getAsDirectoryDescriptorRecursively(file);
        if (desc != null && desc.isExcludeFromTextureCache()) {
            createDefaultView(type, texture ? "Texture" : "Texture Atlas", true);
            return;
        }

        name = new VisLabel(texture ? file.nameWithoutExtension() : file.name(), "small");

        TextureRegion region;

        if (atlas) {
            region = textureCache.getRegion(new AtlasRegionAsset(relativePath, null));
        } else {
            region = textureCache.getRegion(new TextureRegionAsset(relativePath));
        }

        Image img = new Image(region);
        img.setScaling(Scaling.fit);
        add(img).expand().fill().row();

        this.region = region;

        return;
    }

    if (ProjectPathUtils.isParticle(file)) {
        createDefaultView(AssetType.PARTICLE_EFFECT, "Particle Effect", true);
        return;
    }

    if (ProjectPathUtils.isMusicFile(assetsMetadata, file)) {
        createDefaultView(AssetType.MUSIC, "Music");
        return;
    }

    if (ProjectPathUtils.isSoundFile(assetsMetadata, file)) {
        createDefaultView(AssetType.SOUND, "Sound");
        return;
    }

    if (ProjectPathUtils.isFragmentShader(file)) {
        createDefaultView(AssetType.FRAGMENT_SHADER, "Fragment Shader", true);
        return;
    }

    if (ProjectPathUtils.isVertexShader(file)) {
        createDefaultView(AssetType.VERTEX_SHADER, "Vertex Shader", true);
        return;
    }

    if (ProjectPathUtils.isScene(file)) {
        createDefaultView(AssetType.SCENE, "Scene", true);
        return;
    }

    support = findSupportForDirectory(file, relativePath);
    if (support != null) {
        ContentItemProperties item = support.getContentItemProperties(file, relativePath, ext);
        if (item != null) {
            createDefaultView(item.type, item.title, item.hideExtension);
            return;
        }
    }

    type = AssetType.UNKNOWN;
    name = new VisLabel(file.name());
}

From source file:com.kotcrab.vis.ui.widget.MenuItem.java

License:Apache License

private void init(String text, Image image, MenuItemStyle style) {
    this.style = style;
    this.image = image;
    setSkin(VisUI.getSkin());/*from www  .  j a v a  2 s  .c om*/
    Sizes sizes = VisUI.getSizes();

    defaults().space(3);

    if (image != null)
        image.setScaling(Scaling.fit);
    add(image).size(sizes.menuItemIconSize);

    label = new Label(text, new LabelStyle(style.font, style.fontColor));
    label.setAlignment(Align.left);
    add(label).expand().fill();

    add(shortcutLabel = new VisLabel("", "menuitem-shortcut")).padLeft(10).right();
    shortcutLabelColor = shortcutLabel.getStyle().fontColor;

    subMenuIconCell = add(subMenuImage = new Image(style.subMenu)).padLeft(3).padRight(3)
            .size(style.subMenu.getMinWidth(), style.subMenu.getMinHeight());
    subMenuIconCell.setActor(null);

    addListener(new ChangeListener() {
        @Override
        public void changed(ChangeEvent event, Actor actor) {
            if (subMenu != null) { //makes submenu item not clickable
                event.stop();
            }
        }
    });

    addListener(new InputListener() {
        @Override
        public void enter(InputEvent event, float x, float y, int pointer, Actor fromActor) {
            if (subMenu != null) { //removes selection of child submenu if mouse moved to parent submenu
                subMenu.setActiveItem(null, false);
                subMenu.setActiveSubMenu(null);
            }

            if (subMenu == null || isDisabled()) { //hides last visible submenu (if any)
                hideSubMenu();
            } else {
                showSubMenu();
            }
        }
    });
}

From source file:com.ore.infinium.HotbarInventoryView.java

License:Open Source License

@Override
public void set(byte index, Inventory inventory) {
    SlotElement slot = m_slots[index];//from  w w  w .ja v  a 2s . c  o m

    Entity item = inventory.item(index);
    ItemComponent itemComponent = itemMapper.get(item);
    m_slots[index].itemCountLabel.setText(Integer.toString(itemComponent.stackSize));

    TextureRegion region;
    SpriteComponent spriteComponent = spriteMapper.get(item);
    if (blockMapper.get(item) != null) {
        //hack
        region = m_client.m_world.m_tileRenderer.m_tilesAtlas
                .findRegion(spriteComponent.textureName.concat("-00"));
    } else {
        region = m_client.m_world.m_atlas.findRegion(spriteComponent.textureName);
    }

    Image slotImage = slot.itemImage;
    //        //m_blockAtlas.findRegion("stone"));
    slotImage.setDrawable(new TextureRegionDrawable(region));
    slotImage.setSize(region.getRegionWidth(), region.getRegionHeight());
    slotImage.setScaling(Scaling.fit);

    setHotbarSlotVisible(index, true);

    //do not exceed the max size/resort to horrible upscaling. prefer native size of each inventory sprite.
    //.maxSize(region.getRegionWidth(), region.getRegionHeight()).expand().center();

}

From source file:com.ray3k.libraryinvaders.states.MenuState.java

License:Open Source License

private void createMenu() {
    FileHandle fileHandle = Gdx.files.local(Core.DATA_PATH + "/data.json");
    JsonReader reader = new JsonReader();
    JsonValue val = reader.parse(fileHandle);

    root = new Table();
    root.setFillParent(true);/*w  w  w.  j av  a  2 s. c o m*/
    stage.addActor(root);

    Label label = new Label(val.getString("title"), skin, "title");
    label.setAlignment(Align.center);
    root.add(label).padBottom(50.0f);

    root.row();
    Image image = new Image(getEnemy());
    image.setScaling(Scaling.fit);
    root.add(image).grow();

    root.defaults().space(30.0f).padLeft(25.0f);
    root.row();
    ImageTextButton imageTextButton = new ImageTextButton("Play", skin);
    root.add(imageTextButton).expandX().left();

    imageTextButton.addListener(new ChangeListener() {
        @Override
        public void changed(ChangeListener.ChangeEvent event, Actor actor) {
            getCore().getAssetManager().get(Core.DATA_PATH + "/sfx/menu.wav", Sound.class).play();
            showCharacterDialog();
        }
    });

    root.row();
    imageTextButton = new ImageTextButton("Quit", skin);
    root.add(imageTextButton).expandX().left().padBottom(50.0f);

    imageTextButton.addListener(new ChangeListener() {
        @Override
        public void changed(ChangeListener.ChangeEvent event, Actor actor) {
            getCore().getAssetManager().get(Core.DATA_PATH + "/sfx/menu.wav", Sound.class).play();
            Gdx.app.exit();
        }
    });
}

From source file:com.ray3k.skincomposer.dialog.DialogDrawables.java

License:Open Source License

private void refreshDrawableDisplay() {
    contentGroup.clear();//  w  w w . j a  v  a2 s. c om

    TooltipManager manager = new TooltipManager();
    manager.animations = false;
    manager.initialTime = .4f;
    manager.resetTime = 0.0f;
    manager.subsequentTime = 0.0f;
    manager.hideAll();
    manager.instant();

    if (drawables.size == 0) {
        Label label = new Label("No drawables have been added!", getSkin());
        contentGroup.addActor(label);
    }

    for (DrawableData drawable : drawables) {
        Button drawableButton;

        if (property != null) {
            drawableButton = new Button(getSkin(), "color-base");
            drawableButton.addListener(new ChangeListener() {
                @Override
                public void changed(ChangeListener.ChangeEvent event, Actor actor) {
                    result(drawable);
                    hide();
                }
            });
            drawableButton.addListener(main.getHandListener());
        } else {
            drawableButton = new Button(getSkin(), "color-base-static");
        }
        contentGroup.addActor(drawableButton);

        Table table = new Table();
        drawableButton.add(table).width(sizes[MathUtils.floor(zoomSlider.getValue())])
                .height(sizes[MathUtils.floor(zoomSlider.getValue())]);

        ClickListener fixDuplicateTouchListener = new ClickListener() {
            @Override
            public boolean touchDown(InputEvent event, float x, float y, int pointer, int button) {
                event.setBubbles(false);
                return super.touchDown(event, x, y, pointer, button);
            }
        };

        //color wheel
        Button button = new Button(getSkin(), "colorwheel");
        button.addListener(new ChangeListener() {
            @Override
            public void changed(ChangeListener.ChangeEvent event, Actor actor) {
                newTintedDrawable(drawable);
                event.setBubbles(false);
            }
        });
        button.addListener(fixDuplicateTouchListener);
        if (property == null) {
            button.addListener(main.getHandListener());
        }
        table.add(button);

        //swatches
        button = new Button(getSkin(), "swatches");
        button.addListener(new ChangeListener() {
            @Override
            public void changed(ChangeListener.ChangeEvent event, Actor actor) {
                colorSwatchesDialog(drawable);
                event.setBubbles(false);
            }
        });
        button.addListener(fixDuplicateTouchListener);
        if (property == null) {
            button.addListener(main.getHandListener());
        }
        table.add(button);

        //rename (ONLY FOR TINTS)
        if (drawable.tint != null || drawable.tintName != null) {
            button = new Button(getSkin(), "settings-small");
            button.addListener(new ChangeListener() {
                @Override
                public void changed(ChangeListener.ChangeEvent event, Actor actor) {
                    renameDrawableDialog(drawable);
                    event.setBubbles(false);
                }
            });
            button.addListener(fixDuplicateTouchListener);
            if (property == null) {
                button.addListener(main.getHandListener());
            }
            table.add(button);
        } else {
            table.add();
        }

        //delete
        button = new Button(getSkin(), "delete-small");
        button.addListener(new ChangeListener() {
            @Override
            public void changed(ChangeListener.ChangeEvent event, Actor actor) {
                deleteDrawable(drawable);
                event.setBubbles(false);
            }
        });
        button.addListener(fixDuplicateTouchListener);
        if (property == null) {
            button.addListener(main.getHandListener());
        }
        table.add(button).expandX().right();

        //preview
        table.row();
        Container bg = new Container();
        bg.setClip(true);
        bg.setBackground(getSkin().getDrawable("white"));
        bg.setColor(drawable.bgColor);
        Image image = new Image(drawablePairs.get(drawable));
        if (MathUtils.isZero(zoomSlider.getValue())) {
            image.setScaling(Scaling.fit);
            bg.fill(false);
        } else {
            image.setScaling(Scaling.stretch);
            bg.fill();
        }
        bg.setActor(image);
        table.add(bg).colspan(4).grow();

        //name
        table.row();
        Label label = new Label(drawable.name, getSkin());
        label.setEllipsis("...");
        label.setEllipsis(true);
        label.setAlignment(Align.center);
        table.add(label).colspan(4).growX().width(sizes[MathUtils.floor(zoomSlider.getValue())]);

        //Tooltip
        TextTooltip toolTip = new TextTooltip(drawable.name, manager, getSkin());
        label.addListener(toolTip);
    }
}

From source file:com.strategames.catchdastars.dialogs.LevelCompleteDialog.java

License:Open Source License

private void showScoreActor() {

    if (!scoreItemIterator.hasNext()) { //start next animation phase
        animationController();// w  w  w. j  a v  a  2  s .c o  m
        return;
    }

    Score.ScoreItem scoreItem = scoreItemIterator.next();

    final int increment = scoreItem.getMultiplier();
    final int amount = scoreItem.getScore();
    final SoundEffect incrementSound = SoundEffect.getSoundForIncrement(increment);

    Image image = scoreItem.getImage();
    image.setScaling(Scaling.stretch);
    double scaleFactor = this.maxImageHeight / (double) image.getHeight();
    float height = this.maxImageHeight;
    float width = (float) (image.getWidth() * scaleFactor);

    Table scoreItemTable = new Table();
    scoreItemTable.add(image).padRight(20f).width(width).height(height);

    final Label label = new Label("", getSkin());
    scoreItemTable.add(label).width(50f);

    this.animPosition.x = 100f;
    this.animPosition.y = this.top - ((this.maxImageHeight + this.padding) * scoreActors.size());

    scoreItemTable.setPosition(animPosition.x, -height);

    this.count = 0;
    this.delayCount = 0;

    scoreItemTable.addAction(
            sequence(moveTo(animPosition.x, animPosition.y, 1f, Interpolation.circleOut), new Action() {
                @Override
                public boolean act(float delta) {
                    if (count <= amount) {
                        if (delayCount < 1) {
                            label.setText(String.valueOf(count));
                            if (count > 0) {
                                incrementSound.play();
                            }
                            count += increment;
                            delayCount = delay;
                        }
                        delayCount--;
                        return false;
                    } else {
                        showScoreActor();
                        return true;
                    }
                }

            }));

    scoreActors.add(new ScoreActor(scoreItemTable, scoreItem));
    super.stage.addActor(scoreItemTable);
}

From source file:com.strategames.catchdastars.dialogs.LevelCompleteDialog.java

License:Open Source License

private void showCashRegistry(final float x, final float y) {
    this.cashRegister = new Table();
    final float scale = 1.2f;
    Image image = new Image(Textures.getInstance().cashRegister);
    image.setScaling(Scaling.stretch);
    double scaleFactor = this.maxImageHeight / (double) image.getHeight();
    float height = this.maxImageHeight;
    float width = (float) (image.getWidth() * scaleFactor);
    float xPosition = x + width;
    this.cashRegister.add(image).padRight(20f).width(width);
    this.cashRegister.setTransform(true);
    this.cashRegister.setHeight(height);
    this.cashRegister.setPosition(xPosition, -height);
    this.cashRegister.scaleBy(scale);
    this.totalScoreLabel = new Label(
            String.valueOf(this.score.getCumulatedScore() - this.score.getTotalScoreFromScoreItems()),
            getSkin());/* w ww .j a  v a2s .  c  o  m*/
    this.totalScoreLabel.scaleBy(scale);
    this.cashRegister.add(totalScoreLabel).width(50);

    float finalYPosition = y - height - this.padding;
    this.cashRegister
            .addAction(sequence(moveTo(xPosition, finalYPosition, 1f, Interpolation.circleOut), new Action() {
                @Override
                public boolean act(float delta) {
                    animationController();
                    return true;
                }
            }));

    super.stage.addActor(this.cashRegister);

    cashRegisterOpenSound.play();
}

From source file:com.vlaaad.dice.ui.windows.CreatureQueueWindow.java

License:Open Source License

@Override
protected void initialize() {
    creaturesList.defaults().pad(2);//from   ww w.jav a 2s  . com
    creaturesList.padTop(12);

    Image left = new Image(Config.skin, "ui-creature-queue-gradient-left");
    left.setScaling(Scaling.stretchY);
    left.setAlign(Align.left);
    left.setTouchable(Touchable.disabled);

    Image right = new Image(Config.skin, "ui-creature-queue-gradient-right");
    right.setScaling(Scaling.stretchY);
    right.setAlign(Align.right);
    right.setTouchable(Touchable.disabled);

    Stack stack = new Stack();
    stack.add(new ScrollPane(creaturesList, new ScrollPane.ScrollPaneStyle()));
    stack.add(left);
    stack.add(right);

    Table content = new Table(Config.skin);
    content.setTouchable(Touchable.enabled);
    content.setBackground("ui-inventory-ability-window-background");
    content.defaults().pad(2);
    content.add(new LocLabel("ui-turns-order")).row();
    content.add(new Image(Config.skin, "ui-creature-info-line")).width(100).row();
    content.add(stack).maxWidth(table.getStage().getWidth() - 45).padRight(4).padLeft(4).row();

    table.add(content);
}