boolean (final IComponent component) { if (progress != null && progress.isCanceled()) return false; // Clear previous error (if any) component.putClientProperty(CLIENT_PROP_ERROR_ARRAY, null); if (!(component instanceof IContainer container)) { return true; } if (container instanceof IRootContainer rootContainer) { if (rootContainer.getComponentCount() > 1) { // TODO[vova] implement putError(component, new ErrorInfo( component, null, UIDesignerBundle.message("error.multiple.toplevel.components"), HighlightDisplayLevel.ERROR, QuickFix.EMPTY_ARRAY )); } } else if (container.isXY() && container.getComponentCount() > 0) { // TODO[vova] implement putError(component, new ErrorInfo( component, null, UIDesignerBundle.message("error.panel.not.laid.out"), HighlightDisplayLevel.ERROR, QuickFix.EMPTY_ARRAY ) ); } return true; }