boolean () { return !Objects.equals(myShellPathField.getText(), myProjectOptionsProvider.getShellPath()) || !Objects.equals(myStartDirectoryField.getText(), StringUtil.notNullize(myProjectOptionsProvider.getStartingDirectory())) || !Objects.equals(myTabNameTextField.getText(), myOptionsProvider.getTabName()) || (myCloseSessionCheckBox.isSelected() != myOptionsProvider.getCloseSessionOnLogout()) || (myMouseReportCheckBox.isSelected() != myOptionsProvider.getMouseReporting()) || (mySoundBellCheckBox.isSelected() != myOptionsProvider.getAudibleBell()) || (myCopyOnSelectionCheckBox.isSelected() != myOptionsProvider.getCopyOnSelection()) || (myPasteOnMiddleButtonCheckBox.isSelected() != myOptionsProvider.getPasteOnMiddleMouseButton()) || (myOverrideIdeShortcuts.isSelected() != myOptionsProvider.getOverrideIdeShortcuts()) || (myShellIntegration.isSelected() != myOptionsProvider.getShellIntegration()) || (myHighlightHyperlinks.isSelected() != myOptionsProvider.getHighlightHyperlinks()) || (myUseOptionAsMetaKey.isSelected() != myOptionsProvider.getUseOptionAsMetaKey()) || myConfigurables.stream().anyMatch(c -> c.isModified()) || !Comparing.equal(myEnvVarField.getData(), myProjectOptionsProvider.getEnvData()) || myCursorShape.getItem() != myOptionsProvider.getCursorShape(); }