Screen Close Dialog, remove Cancel Button

Hello,

I’m using Cuba 7.2.13.

I’m trying to close all the open screens with default close action from main screen using below code.

Collection<Screen> openScreens = screens.getOpenedScreens().getWorkAreaScreens();
        AtomicInteger failedScreenCount = new AtomicInteger();
        AtomicInteger closedScreenCount = new AtomicInteger();

        while(openScreens.size() > 0 && failedScreenCount.get() == 0) {
            Iterator<Screen> iterator = openScreens.iterator();
            while (iterator.hasNext()) {
                Screen screen = iterator.next();

                Component uiComponent = screen.getWindow()
                        .unwrapComposition(Component.class);
                if (uiComponent.isAttached()) {
                    OperationResult result = screen.closeWithDefaultAction();

                    if (result != OperationResult.success()) {
                        screen.addAfterCloseListener(afterCloseEvent -> {
                            closedScreenCount.getAndIncrement();

                            if(failedScreenCount.get() == closedScreenCount.get())
                                validateScreens(selectedEntity);
                        });
                        failedScreenCount.getAndIncrement();
                    }

                    iterator.remove();
                }
            }
        }

If user has any unsaved edit in any of the screen there is a popup with Save, Don’t Save and Cancel button as below.

image

My requirement is to have only Save and Don’t save (Remove cancel button ) while closing screen through this code.

Please guide me how to get this done.

Thanks & Regards,
Hari

Hi @gorelov ,

Please this issue and help.

Thanks,
Hari

@konstantin

Please help me on this requirement?

Thanks & Regards,
Hari