Bug 54347 [Dialogs] Provide "Yes No Always Never" dialog
In Debug UI, we define a dialog that prompts the user to answer Yes, No, Always, or Never. If anyone's interested, this code is generic and could be shipped as a JFace component. The dialog is in the org.eclipse.debug.ui project; the type name is AlwaysNeverDialog. The dialog supports passing in a preference store and preference key for the dialog to persist an Always or Never selection. For cases where clients don't have a preference store but still want to be able to get at the user's response, it alternatively supports passing in a string buffer where the dialog will store the "always/never/prompt" status.
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/IDEWorkbenchAdvisor.java
windowConfigurer.setShowPerspectiveBar(true);
	    windowConfigurer.setShowFastViewBars(true);
	    windowConfigurer.setShowProgressIndicator(true);
	    
		
		windowConfigurer.addEditorAreaTransfer(EditorInputTransfer.getInstance());
		windowConfigurer.addEditorAreaTransfer(ResourceTransfer.getInstance());
		windowConfigurer.addEditorAreaTransfer(MarkerTransfer.getInstance());
		windowConfigurer.configureEditorAreaDropListener(new EditorAreaDropAdapter(windowConfigurer.getWindow()));
		
		
		windowConfigurer.getWindow().addPageListener(new IPageListener () {
			public void pageActivated(IWorkbenchPage page) {
			    
			}
			public void pageClosed(IWorkbenchPage page) {
				updateTitle(page.getWorkbenchWindow());
			}
			public void pageOpened(IWorkbenchPage page) {
			    
			}
		});
		windowConfigurer.getWindow().addPerspectiveListener(new IPerspectiveListener() {
			public void perspectiveActivated(IWorkbenchPage page, IPerspectiveDescriptor perspective) {
				updateTitle(page.getWorkbenchWindow());
			}
			public void perspectiveChanged(IWorkbenchPage page, IPerspectiveDescriptor perspective, String changeId) {
			    
			}