Example usage for com.badlogic.gdx.scenes.scene2d.utils Selection isEmpty

List of usage examples for com.badlogic.gdx.scenes.scene2d.utils Selection isEmpty

Introduction

In this page you can find the example usage for com.badlogic.gdx.scenes.scene2d.utils Selection isEmpty.

Prototype

public boolean isEmpty() 

Source Link

Usage

From source file:com.bladecoder.engineeditor.ui.components.EditTree.java

License:Apache License

public EditTree(Skin skin) {
    super(skin);//from  w w w.  ja v  a 2 s  .  co  m

    this.skin = skin;
    upBtn = new ImageButton(skin);
    downBtn = new ImageButton(skin);
    leftBtn = new ImageButton(skin);
    rightBtn = new ImageButton(skin);

    tree = new Tree(skin);

    ScrollPane scrollPane = new ScrollPane(tree, skin);
    container = new Container<ScrollPane>(scrollPane);
    container.fill();
    container.prefHeight(1000);

    toolbar = new EditToolbar(skin);
    //      debug();
    add(toolbar).expandX().fillX();
    row().fill();
    add(container).expandY().fill();

    toolbar.addToolBarButton(upBtn, "ic_up", "Move up", "Move up");
    toolbar.addToolBarButton(downBtn, "ic_down", "Move down", "Move down");
    toolbar.addToolBarButton(leftBtn, "ic_left", "Child", "Move to child option");
    toolbar.addToolBarButton(rightBtn, "ic_right", "Parent", "Move to parent option");
    toolbar.addCreateListener(new ChangeListener() {

        @Override
        public void changed(ChangeEvent event, Actor actor) {
            create();
        }
    });

    toolbar.addEditListener(new ChangeListener() {

        @Override
        public void changed(ChangeEvent event, Actor actor) {
            edit();
        }
    });

    toolbar.addDeleteListener(new ChangeListener() {

        @Override
        public void changed(ChangeEvent event, Actor actor) {
            delete();
        }
    });

    toolbar.addCopyListener(new ChangeListener() {

        @Override
        public void changed(ChangeEvent event, Actor actor) {
            copy();
        }
    });

    toolbar.addPasteListener(new ChangeListener() {

        @Override
        public void changed(ChangeEvent event, Actor actor) {
            paste();
        }
    });

    upBtn.addListener(new ChangeListener() {

        @Override
        public void changed(ChangeEvent event, Actor actor) {
            upNode();
        }
    });

    downBtn.addListener(new ChangeListener() {

        @Override
        public void changed(ChangeEvent event, Actor actor) {
            downNode();
        }
    });

    leftBtn.addListener(new ChangeListener() {

        @Override
        public void changed(ChangeEvent event, Actor actor) {
            leftNode();
        }
    });

    rightBtn.addListener(new ChangeListener() {

        @Override
        public void changed(ChangeEvent event, Actor actor) {
            rightNode();
        }
    });

    tree.addListener(new ChangeListener() {
        @Override
        public void changed(ChangeEvent event, Actor actor) {
            Selection<Node> selection = tree.getSelection();

            if (selection.isEmpty()) {
                upBtn.setDisabled(true);
                downBtn.setDisabled(true);

                leftBtn.setDisabled(true);
                rightBtn.setDisabled(true);
            } else {

                Node nodeSel = selection.first();

                int level = nodeSel.getLevel();
                Array<Node> siblings = getSiblings();

                upBtn.setDisabled(siblings.get(0) == nodeSel);
                downBtn.setDisabled(siblings.get(siblings.size - 1) == nodeSel);

                leftBtn.setDisabled(level == 1);
                rightBtn.setDisabled(siblings.get(0) == nodeSel);
            }

            toolbar.disableEdit(selection == null);
        }

    });
}