private void tintedDrawableSettingsDialog(DrawableData drawable) {
        TextField textField = new TextField("", getSkin());
        var dialog = new Dialog("Rename drawable?", getSkin(), "bg") {
            @Override
            protected void result(Object object) {
                super.result(object);
                
                if (object instanceof Boolean && (boolean) object == true) {
                    applyTintedDrawableSettings(drawable, textField.getText());
                    drawable.minWidth = ((Spinner) findActor("minWidth")).getValueAsInt();
                    drawable.minHeight = ((Spinner) findActor("minHeight")).getValueAsInt();
                    atlasData.produceAtlas();
                    refreshDrawableDisplay();
                }
                getStage().setScrollFocus(scrollPane);
            }
            
            public void callResult(Object object) {
                result(object);
            }

            @Override
            public Dialog show(Stage stage) {
                Dialog dialog = super.show(stage);
                stage.setKeyboardFocus(textField);
                return dialog;
            }
        };
        
        dialog.getTitleTable().padLeft(5.0f);
        dialog.getContentTable().padLeft(10.0f).padRight(10.0f).padTop(5.0f);
        dialog.getButtonTable().padBottom(15.0f);
        
        dialog.getContentTable().add(new Label("Please enter a new name for the drawable: ", getSkin()));
        
        dialog.button("OK", true);
        dialog.button("Cancel", false).key(Keys.ESCAPE, false);
        TextButton okButton = (TextButton) dialog.getButtonTable().getCells().first().getActor();
        okButton.addListener(handListener);
        dialog.getButtonTable().getCells().get(1).getActor().addListener(handListener);
        
        dialog.getContentTable().row();
        textField.setText(drawable.name);
        textField.selectAll();
        textField.addListener(new ChangeListener() {
            @Override
            public void changed(ChangeListener.ChangeEvent event, Actor actor) {
                boolean disable = !DrawableData.validate(textField.getText()) || (checkIfNameExists(textField.getText()) && !drawable.name.equals(textField.getText()));
                okButton.setDisabled(disable);
            }
        });
        textField.setTextFieldListener((TextField textField1, char c) -> {
            if (c == '\n') {
                if (!okButton.isDisabled()) {
                    dialog.callResult(true);
                    dialog.hide();
                }
            }
        });
        textField.addListener(ibeamListener);
        dialog.getContentTable().add(textField);
        
        dialog.getContentTable().row();
        var table = new Table();
        dialog.getContentTable().add(table);
        
        table.defaults().space(3);
        var label = new Label("Set values to -1 to disable.", getSkin());
        table.add(label).colspan(2).padTop(7);
        
        table.row();
        label = new Label("minWidth:", getSkin());
        table.add(label);
        
        var spinner = new Spinner(drawable.minWidth, 1, true, Spinner.Orientation.HORIZONTAL, getSkin());
        spinner.setMinimum(-1);
        spinner.setName("minWidth");
        table.add(spinner).width(100);
        spinner.getButtonMinus().addListener(handListener);
        spinner.getButtonPlus().addListener(handListener);
        spinner.getTextField().addListener(ibeamListener);
        
        table.row();
        label = new Label("minHeight:", getSkin());
        table.add(label);
        
        spinner = new Spinner(drawable.minHeight, 1, true, Spinner.Orientation.HORIZONTAL, getSkin());
        spinner.setMinimum(-1);
        spinner.setName("minHeight");
        table.add(spinner).width(100);
        spinner.getButtonMinus().addListener(handListener);
        spinner.getButtonPlus().addListener(handListener);
        spinner.getTextField().addListener(ibeamListener);
        
        textField.setFocusTraversal(false);
        
        dialog.show(getStage());
    }
Recreates the drawables array only including visible drawables.
core/src/com/ray3k/skincomposer/dialog/DialogDrawables.java