use of com.ray3k.stripe.DraggableList.DraggableListListener in project skin-composer by raeleus.
the class RootTable method addClassBar.
private void addClassBar() {
Table table = new Table();
table.setBackground(getSkin().getDrawable("class-bar"));
add(table).expandX().left().growX();
Label label = new Label("Class:", getSkin());
table.add(label).padRight(10.0f).padLeft(10.0f);
classSelectBox = new SelectBox(getSkin());
classSelectBox.addListener(handListener);
classSelectBox.getList().addListener(handListener);
classSelectBox.getList().addListener(scrollFocusListener);
table.add(classSelectBox).padRight(5.0f).minWidth(150.0f);
classSelectBox.addListener(new ChangeListener() {
@Override
public void changed(ChangeListener.ChangeEvent event, Actor actor) {
fire(new LoadStylesEvent(classSelectBox, styleBox));
fire(new RootTableEvent(RootTableEnum.CLASS_SELECTED));
}
});
Button button = new Button(getSkin(), "new");
button.addListener(handListener);
table.add(button);
button.addListener(new ChangeListener() {
@Override
public void changed(ChangeListener.ChangeEvent event, Actor actor) {
fire(new RootTableEvent(RootTableEnum.NEW_CLASS));
}
});
// Tooltip
TextTooltip toolTip = Main.fixTooltip(new TextTooltip("New Class", tooltipManager, getSkin()));
button.addListener(toolTip);
classDuplicateButton = new Button(getSkin(), "duplicate");
classDuplicateButton.setDisabled(true);
classDuplicateButton.addListener(handListener);
table.add(classDuplicateButton);
classDuplicateButton.addListener(new ChangeListener() {
@Override
public void changed(ChangeListener.ChangeEvent event, Actor actor) {
fire(new RootTableEvent(RootTableEnum.DUPLICATE_CLASS));
}
});
toolTip = Main.fixTooltip(new TextTooltip("Duplicate Class", tooltipManager, getSkin()));
classDuplicateButton.addListener(toolTip);
classDeleteButton = new Button(getSkin(), "delete");
classDeleteButton.setDisabled(true);
table.add(classDeleteButton);
classDeleteButton.addListener(new ChangeListener() {
@Override
public void changed(ChangeListener.ChangeEvent event, Actor actor) {
fire(new RootTableEvent(RootTableEnum.DELETE_CLASS));
}
});
toolTip = Main.fixTooltip(new TextTooltip("Delete Class", tooltipManager, getSkin()));
classDeleteButton.addListener(toolTip);
classRenameButton = new Button(getSkin(), "settings");
classRenameButton.setDisabled(true);
table.add(classRenameButton).padRight(30.0f);
classRenameButton.addListener(new ChangeListener() {
@Override
public void changed(ChangeListener.ChangeEvent event, Actor actor) {
fire(new RootTableEvent(RootTableEnum.RENAME_CLASS));
}
});
toolTip = Main.fixTooltip(new TextTooltip("Rename Class", tooltipManager, getSkin()));
classRenameButton.addListener(toolTip);
label = new Label("Style:", getSkin());
table.add(label).padRight(10.0f);
styleBox = new DraggableSelectBox(skin);
styleBox.setAlignment(Align.left);
styleBox.getDraggableTextList().setAlignment(Align.left);
styleBox.getDraggableTextList().setAllowRemoval(false);
styleBox.addListener(new DraggableListListener() {
@Override
public void removed(Actor actor) {
}
@Override
public void reordered(Actor actor, int indexBefore, int indexAfter) {
var selectedClass = rootTable.getSelectedClass();
if (selectedClass != null) {
fire(new ReorderStylesEvent(selectedClass, indexBefore, indexAfter));
} else {
var customClass = rootTable.getSelectedCustomClass();
fire(new ReorderCustomStylesEvent(customClass, indexBefore, indexAfter));
}
styleBox.getPopTable().hide();
}
@Override
public void selected(Actor actor) {
fire(new RootTable.RootTableEvent(RootTable.RootTableEnum.STYLE_SELECTED));
}
});
table.add(styleBox).padRight(5.0f).minWidth(150.0f);
styleBox.addListener(handListener);
styleBox.getDraggableTextList().addListener(handListener);
styleBox.getScrollPane().addListener(scrollFocusListener);
button = new Button(getSkin(), "new");
button.addListener(handListener);
table.add(button);
button.addListener(new ChangeListener() {
@Override
public void changed(ChangeListener.ChangeEvent event, Actor actor) {
fire(new RootTableEvent(RootTableEnum.NEW_STYLE));
}
});
toolTip = Main.fixTooltip(new TextTooltip("New Style", tooltipManager, getSkin()));
button.addListener(toolTip);
button = new Button(getSkin(), "duplicate");
button.addListener(handListener);
table.add(button);
button.addListener(new ChangeListener() {
@Override
public void changed(ChangeListener.ChangeEvent event, Actor actor) {
fire(new RootTableEvent(RootTableEnum.DUPLICATE_STYLE));
}
});
toolTip = Main.fixTooltip(new TextTooltip("Duplicate Style", tooltipManager, getSkin()));
button.addListener(toolTip);
styleDeleteButton = new Button(getSkin(), "delete");
styleDeleteButton.addListener(handListener);
table.add(styleDeleteButton);
styleDeleteButton.addListener(new ChangeListener() {
@Override
public void changed(ChangeListener.ChangeEvent event, Actor actor) {
fire(new RootTableEvent(RootTableEnum.DELETE_STYLE));
}
});
toolTip = Main.fixTooltip(new TextTooltip("Delete Style", tooltipManager, getSkin()));
styleDeleteButton.addListener(toolTip);
styleRenameButton = new Button(getSkin(), "settings");
table.add(styleRenameButton).expandX().left();
styleRenameButton.addListener(new ChangeListener() {
@Override
public void changed(ChangeListener.ChangeEvent event, Actor actor) {
fire(new RootTableEvent(RootTableEnum.RENAME_STYLE));
}
});
toolTip = Main.fixTooltip(new TextTooltip("Rename Style", tooltipManager, getSkin()));
styleRenameButton.addListener(toolTip);
fire(new LoadClassesEvent(classSelectBox));
fire(new LoadStylesEvent(classSelectBox, styleBox));
}
Aggregations