docs: protected void buildLayout() {
          setSizeFull();
          setSpacing(true);
          setMargin(false);
          setStyleName("group");
          final VerticalLayout gridHeaderLayout = new VerticalLayout();
          gridHeaderLayout.setSizeFull();
          gridHeaderLayout.setSpacing(false);
          gridHeaderLayout.setMargin(false);
  
          gridHeaderLayout.setStyleName("table-layout");
          gridHeaderLayout.addComponent(gridHeader);
  
          gridHeaderLayout.setComponentAlignment(gridHeader, Alignment.TOP_CENTER);
          gridHeaderLayout.addComponent(grid);
          gridHeaderLayout.setComponentAlignment(grid, Alignment.TOP_CENTER);
          gridHeaderLayout.setExpandRatio(grid, 1.0F);
  
          addComponent(gridHeaderLayout);
          setComponentAlignment(gridHeaderLayout, Alignment.TOP_CENTER);
          setExpandRatio(gridHeaderLayout, 1.0F);
          if (hasFooterSupport()) {
              final Layout footerLayout = getFooterSupport().createFooterMessageComponent();
              addComponent(footerLayout);
              setComponentAlignment(footerLayout, Alignment.BOTTOM_CENTER);
          }
  
      }