question: public CompareResult open ( ) { final ContentComparator [ ] comparatorArray = comparators . toArray ( new ContentComparator [ comparators . size ( ) ] ) ; final CustomCompareEditorInput input = new CustomCompareEditorInput ( modified , original , ancestor , comparatorArray , compareConfiguration , externalCompareHandler ) ; if ( compareConfiguration . isLeftEditable ( ) || compareConfiguration . isRightEditable ( ) ) { compareConfiguration . setProperty ( "org.eclipse.compare.internal.CONFIRM_SAVE_PROPERTY" , Boolean . FALSE ) ; input . setAlwaysDirty ( alwaysDirty ) ; } input . addSaveListener ( new ProxyCompareSaveListener ( ) ) ; log . info ( MessageFormat . format ( "Comparing {0} to {1}" , getLabelNOLOC ( modified ) , getLabelNOLOC ( original ) ) ) ; compareUIType . openCompareUI ( input ) ; final boolean contentsIdentical = ( input . getCompareResult ( ) == null ) ; final boolean contentsSaved = ( input . getSavedContents ( ) . length > 0 ) ; return new CompareResult ( contentsIdentical , input . wasOKPressed ( ) , contentsSaved ) ; }
target:  Opens this compare operation, showing the compare UI, returning the result details of the comparison. Note that the compare results only includes saved data from the results of opening the UI - that is, it will only include saved data from a synchronous comparison (ie, in a dialog). If you use an asynchronous compare UI (ie, an editor), you should hook up a save listener.