public void perform()

in app/src/main/java/com/oracle/javafx/scenebuilder/app/menubar/MenuBarController.java [1979:2183]


        public void perform() {
            assert documentWindowController != null;
            EditorPlatform.Theme currentTheme
                            = documentWindowController.getEditorController().getTheme();
            EditorPlatform.Theme overridingTheme = theme;

            switch (theme) {
                case CASPIAN:
                    if (caspianHighContrastThemeMenuItem.isSelected()) {
                        overridingTheme = EditorPlatform.Theme.CASPIAN_HIGH_CONTRAST;
                    }
                    break;
                case CASPIAN_EMBEDDED:
                    if (caspianHighContrastThemeMenuItem.isSelected()) {
                        overridingTheme = EditorPlatform.Theme.CASPIAN_EMBEDDED_HIGH_CONTRAST;
                    }
                    break;
                case CASPIAN_EMBEDDED_QVGA:
                    if (caspianHighContrastThemeMenuItem.isSelected()) {
                        overridingTheme = EditorPlatform.Theme.CASPIAN_EMBEDDED_QVGA_HIGH_CONTRAST;
                    }
                    break;
                case CASPIAN_HIGH_CONTRAST:
                    switch (currentTheme) {
                        case CASPIAN:
                            if (caspianHighContrastThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.CASPIAN_HIGH_CONTRAST;
                            }
                            break;
                        case CASPIAN_EMBEDDED:
                            if (caspianHighContrastThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.CASPIAN_EMBEDDED_HIGH_CONTRAST;
                            }
                            break;
                        case CASPIAN_EMBEDDED_QVGA:
                            if (caspianHighContrastThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.CASPIAN_EMBEDDED_QVGA_HIGH_CONTRAST;
                            }
                            break;
                        case CASPIAN_HIGH_CONTRAST:
                            if (!caspianHighContrastThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.CASPIAN;
                            }
                            break;
                        case CASPIAN_EMBEDDED_HIGH_CONTRAST:
                            if (!caspianHighContrastThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.CASPIAN_EMBEDDED;
                            }
                            break;
                        case CASPIAN_EMBEDDED_QVGA_HIGH_CONTRAST:
                            if (!caspianHighContrastThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.CASPIAN_EMBEDDED_QVGA;
                            }
                            break;
                        default:
                            // All known 6 Caspian cases are handled above.
                            assert false;
                            break;
                    }
                    break;
                case MODENA:
                    if (modenaHighContrastBlackonwhiteThemeMenuItem.isSelected()) {
                        overridingTheme = EditorPlatform.Theme.MODENA_HIGH_CONTRAST_BLACK_ON_WHITE;
                    } else if (modenaHighContrastWhiteonblackThemeMenuItem.isSelected()) {
                        overridingTheme = EditorPlatform.Theme.MODENA_HIGH_CONTRAST_WHITE_ON_BLACK;
                    } else if (modenaHighContrastYellowonblackThemeMenuItem.isSelected()) {
                        overridingTheme = EditorPlatform.Theme.MODENA_HIGH_CONTRAST_YELLOW_ON_BLACK;
                    }
                    break;
                case MODENA_TOUCH:
                    if (modenaHighContrastBlackonwhiteThemeMenuItem.isSelected()) {
                        overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_BLACK_ON_WHITE;
                    } else if (modenaHighContrastWhiteonblackThemeMenuItem.isSelected()) {
                        overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_WHITE_ON_BLACK;
                    } else if (modenaHighContrastYellowonblackThemeMenuItem.isSelected()) {
                        overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_YELLOW_ON_BLACK;
                    }
                    break;
                case MODENA_HIGH_CONTRAST_BLACK_ON_WHITE:
                    switch (currentTheme) {
                        case MODENA:
                            if (modenaHighContrastBlackonwhiteThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.MODENA_HIGH_CONTRAST_BLACK_ON_WHITE;
                            }
                            break;
                        case MODENA_TOUCH:
                            if (modenaHighContrastBlackonwhiteThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_BLACK_ON_WHITE;
                            }
                            break;
                        case MODENA_HIGH_CONTRAST_BLACK_ON_WHITE:
                            if (modenaHighContrastBlackonwhiteThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.MODENA;
                            }
                            break;
                        case MODENA_HIGH_CONTRAST_WHITE_ON_BLACK:
                            break;
                        case MODENA_HIGH_CONTRAST_YELLOW_ON_BLACK:
                            break;
                        case MODENA_TOUCH_HIGH_CONTRAST_BLACK_ON_WHITE:
                            if (modenaHighContrastBlackonwhiteThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.MODENA_TOUCH;
                            }
                            break;
                        case MODENA_TOUCH_HIGH_CONTRAST_WHITE_ON_BLACK:
                            if (modenaHighContrastBlackonwhiteThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_BLACK_ON_WHITE;
                            }
                            break;
                        case MODENA_TOUCH_HIGH_CONTRAST_YELLOW_ON_BLACK:
                            if (modenaHighContrastBlackonwhiteThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_BLACK_ON_WHITE;
                            }
                            break;
                        default:
                            break;
                    }
                break;
                case MODENA_HIGH_CONTRAST_WHITE_ON_BLACK:
                    switch (currentTheme) {
                        case MODENA:
                                if (modenaHighContrastWhiteonblackThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.MODENA_HIGH_CONTRAST_WHITE_ON_BLACK;
                            }
                            break;
                        case MODENA_TOUCH:
                                if (modenaHighContrastWhiteonblackThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_WHITE_ON_BLACK;
                            }
                            break;
                        case MODENA_HIGH_CONTRAST_BLACK_ON_WHITE:
                            break;
                        case MODENA_HIGH_CONTRAST_WHITE_ON_BLACK:
                            if (modenaHighContrastWhiteonblackThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.MODENA;
                            }
                            break;
                        case MODENA_HIGH_CONTRAST_YELLOW_ON_BLACK:
                            break;
                        case MODENA_TOUCH_HIGH_CONTRAST_BLACK_ON_WHITE:
                            if (modenaHighContrastWhiteonblackThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_WHITE_ON_BLACK;
                            }
                            break;
                        case MODENA_TOUCH_HIGH_CONTRAST_WHITE_ON_BLACK:
                            if (modenaHighContrastWhiteonblackThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.MODENA_TOUCH;
                            }
                            break;
                        case MODENA_TOUCH_HIGH_CONTRAST_YELLOW_ON_BLACK:
                            if (modenaHighContrastWhiteonblackThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_WHITE_ON_BLACK;
                            }
                            break;
                        default:
                            break;
                    }
                break;
                case MODENA_HIGH_CONTRAST_YELLOW_ON_BLACK:
                    switch (currentTheme) {
                        case MODENA:
                            if (modenaHighContrastYellowonblackThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.MODENA_HIGH_CONTRAST_YELLOW_ON_BLACK;
                            }
                            break;
                        case MODENA_TOUCH:
                            if (modenaHighContrastYellowonblackThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_YELLOW_ON_BLACK;
                            }
                            break;
                        case MODENA_HIGH_CONTRAST_BLACK_ON_WHITE:
                            break;
                        case MODENA_HIGH_CONTRAST_WHITE_ON_BLACK:
                            break;
                        case MODENA_HIGH_CONTRAST_YELLOW_ON_BLACK:
                            if (modenaHighContrastYellowonblackThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.MODENA;
                            }
                            break;
                        case MODENA_TOUCH_HIGH_CONTRAST_BLACK_ON_WHITE:
                            if (modenaHighContrastYellowonblackThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_YELLOW_ON_BLACK;
                            }
                            break;
                        case MODENA_TOUCH_HIGH_CONTRAST_WHITE_ON_BLACK:
                            if (modenaHighContrastYellowonblackThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_YELLOW_ON_BLACK;
                            }
                            break;
                        case MODENA_TOUCH_HIGH_CONTRAST_YELLOW_ON_BLACK:
                            if (modenaHighContrastYellowonblackThemeMenuItem.isSelected()) {
                                overridingTheme = EditorPlatform.Theme.MODENA_TOUCH;
                            }
                            break;
                        default:
                            break;
                    }
                break;
                default:
                    assert false;
                    break;
            }

            documentWindowController.getEditorController().setTheme(overridingTheme);
        }