Theme Customization - Icons


How do I override the default icon for havana theme? I want to override the default icon at global level not per screen.

I follow below links but still not able to make it.

Is there any guideline or examples I can follow ?


Hello @ckwan,

The custom icon set is the right way to override icons in the application, but for the Havana theme, in some cases, it is not enough. Havana has some *.png icons for values in the CubaIcon set and the corresponding path to the png icon in or

For instance, let’s override ExcelAction icon.

  1. Create custom icon set and register it in the It will be enough for Halo and Hover theme.
    public enum MyIcon implements Icons.Icon {
        protected String source;
        MyIcon(String source) {
            this.source = source;
        public String source() {
            return source;
        public String iconName() {
            return name();
    cuba.iconsConfig =
  2. Create custom with the following content:
  3. Add it to the cuba.themeConfig in the instead of
    cuba.themeConfig=com/company/demoico/ \
       com/haulmont/cuba/ com/haulmont/cuba/
  4. Now we need to check and find property with EXCEL_ACTION. Then we can add it to custom theme file with custom path:
    icons.EXCEL_ACTION = icons/cookies-16.png

Check result demo project: (104.6 KB)