tbm.add(linkWithEditorAction);
	protected void contributeActions() {		// Refresh (toolbar)		SVNUIPlugin plugin = SVNUIPlugin.getPlugin();		refreshAction = new Action(Policy.bind("HistoryView.refreshLabel"), plugin.getImageDescriptor(ISVNUIConstants.IMG_REFRESH_ENABLED)) { //$NON-NLS-1$			public void run() {				refresh();			}		};		refreshAction.setToolTipText(Policy.bind("HistoryView.refresh")); //$NON-NLS-1$		refreshAction.setDisabledImageDescriptor(plugin.getImageDescriptor(ISVNUIConstants.IMG_REFRESH_DISABLED));		refreshAction.setHoverImageDescriptor(plugin.getImageDescriptor(ISVNUIConstants.IMG_REFRESH));				// Double click open action        openAction = new OpenRemoteFileAction();		tableViewer.getTable().addListener(SWT.DefaultSelection, new Listener() {			public void handleEvent(Event e) {				openAction.selectionChanged(null, tableViewer.getSelection());				openAction.run(null);			}		});        // get contents        		getContentsAction = getContextMenuAction(Policy.bind("HistoryView.getContentsAction"), new IWorkspaceRunnable() { //$NON-NLS-1$			public void run(IProgressMonitor monitor) throws CoreException {				ISVNRemoteFile remoteFile = (ISVNRemoteFile)currentSelection.getRemoteResource();				monitor.beginTask(null, 100);				try {					if(confirmOverwrite()) {						InputStream in = ((IResourceVariant)remoteFile).getStorage(new SubProgressMonitor(monitor,50)).getContents();						file.setContents(in, false, true, new SubProgressMonitor(monitor, 50));									}				} catch (TeamException e) {					throw new CoreException(e.getStatus());				} finally {					monitor.done();				}			}		});		WorkbenchHelp.setHelp(getContentsAction, IHelpContextIds.GET_FILE_CONTENTS_ACTION);	        // update to the selected revision		getRevisionAction = getContextMenuAction(Policy.bind("HistoryView.getRevisionAction"), new IWorkspaceRunnable() { //$NON-NLS-1$			public void run(IProgressMonitor monitor) throws CoreException {				ISVNRemoteFile remoteFile = (ISVNRemoteFile)currentSelection.getRemoteResource();				try {					if(confirmOverwrite()) {						SVNTeamProvider provider = (SVNTeamProvider)RepositoryProvider.getProvider(file.getProject());                        provider.update(new IResource[] {file}, remoteFile.getLastChangedRevision(), monitor);					 						historyTableProvider.setFile(remoteFile);						tableViewer.refresh();					}				} catch (TeamException e) {					throw new CoreException(e.getStatus());				}			}		});		WorkbenchHelp.setHelp(getRevisionAction, IHelpContextIds.GET_FILE_REVISION_ACTION);			// Contribute actions to popup menu for the table		MenuManager menuMgr = new MenuManager();		Menu menu = menuMgr.createContextMenu(tableViewer.getTable());		menuMgr.addMenuListener(new IMenuListener() {			public void menuAboutToShow(IMenuManager menuMgr) {				fillTableMenu(menuMgr);			}		});		menuMgr.setRemoveAllWhenShown(true);		tableViewer.getTable().setMenu(menu);		getSite().registerContextMenu(menuMgr, tableViewer);		// Create the local tool bar		IToolBarManager tbm = getViewSite().getActionBars().getToolBarManager();		tbm.add(refreshAction);		tbm.update(false);                IActionBars actionBars = getViewSite().getActionBars();        		// Create actions for the text editor (copy and select all)		copyAction = new TextViewerAction(textViewer, ITextOperationTarget.COPY);		copyAction.setText(Policy.bind("HistoryView.copy")); //$NON-NLS-1$		actionBars.setGlobalActionHandler(ITextEditorActionConstants.COPY, copyAction);				selectAllAction = new TextViewerAction(textViewer, ITextOperationTarget.SELECT_ALL);		selectAllAction.setText(Policy.bind("HistoryView.selectAll")); //$NON-NLS-1$		actionBars.setGlobalActionHandler(ITextEditorActionConstants.SELECT_ALL, selectAllAction);		actionBars.updateActionBars();        // Contribute actions to popup menu for the comments area		menuMgr = new MenuManager();		menuMgr.setRemoveAllWhenShown(true);		menuMgr.addMenuListener(new IMenuListener() {			public void menuAboutToShow(IMenuManager menuMgr) {				fillTextMenu(menuMgr);			}		});		StyledText text = textViewer.getTextWidget();		menu = menuMgr.createContextMenu(text);		text.setMenu(menu);	}