code: public static Button createIconButton(String name, String description, Resource icon, String buttonStyle) {
  
          Button button = new Button(name);
          button.setIcon(icon, name);
          button.setDescription(description);
          button.addStyleName(OpenCmsTheme.APP_BUTTON);
          button.addStyleName(ValoTheme.BUTTON_BORDERLESS);
          button.addStyleName(ValoTheme.BUTTON_ICON_ALIGN_TOP);
          if (buttonStyle != null) {
              button.addStyleName(buttonStyle);
          }
          if ((icon instanceof CmsCssIcon) && ((CmsCssIcon)icon).hasAdditionalButtonStyle()) {
              button.addStyleName(((CmsCssIcon)icon).getAdditionalButtonStyle());
          }
          return button;
      }
docs: Creates an icon button.<p>
  
  @param name the name
  @param description the description
  @param icon the icon
  @param buttonStyle the button style
  
  @return the created button