private boolean validateTiledDrawable(Dialog dialog, String newName, String oldName, ColorData colorData, boolean newDrawable) {
        boolean returnValue = true;
        String requiredLabelName = null;
        
        if (!DrawableData.validate(newName) || checkIfNameExists(newName)) {
            if (newDrawable || !newName.equals(oldName)) {
                requiredLabelName = "name-label";
                returnValue = false;
            }
            
        } else if (colorData == null) {
            requiredLabelName = "color-label";
            returnValue = false;
        }
        
        var normalStyle = getSkin().get(Label.LabelStyle.class);
        var requiredStyle = getSkin().get("dialog-required", Label.LabelStyle.class);
        var actors = new Array<Actor>();
        actors.addAll(dialog.getChildren());
        
        for (int i = 0; i < actors.size; i++) {
            var actor = actors.get(i);
            
            if (actor instanceof Group) {
                actors.addAll(((Group) actor).getChildren());
            }
            
            if (actor instanceof Label) {
                Label label = (Label) actor;
                
                if (label.getStyle().equals(requiredStyle)) {
                    label.setStyle(normalStyle);
                }
                
                if (requiredLabelName != null && label.getName() != null && label.getName().equals(requiredLabelName)) {
                    label.setStyle(requiredStyle);
                }
            }
        }
        
        return returnValue;
    }
Recreates the drawables array only including visible drawables.
core/src/com/ray3k/skincomposer/dialog/DialogDrawables.java