@Override
	public void init(IViewSite site) throws PartInitException {
		super.init(site);
		initializeColorRegistry();
		createActions();
		createToolBars();
		ResourcesPlugin.getWorkspace().addResourceChangeListener(new IResourceChangeListener() {

			@Override
			public void resourceChanged(IResourceChangeEvent e) {
				if (e.getDelta() != null && e.getDelta().getResource() != null) {
					getSite().getShell().getDisplay().asyncExec(new Runnable() {

						@Override
						public void run() {
							viewer.setInput(ResourcesPlugin.getWorkspace().getRoot());
							viewer.expandAll();
						}
						
					});
				}
			}
			
		});
	}