Skip to main content
summaryrefslogtreecommitdiffstats
blob: 9802b99dba8278789269b28647eae9932bf4e5ca (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
/*******************************************************************************
 * Copyright (c) 2000, 2003 IBM Corporation and others.
 * All rights reserved. This program and the accompanying materials 
 * are made available under the terms of the Common Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/cpl-v10.html
 * 
 * Contributors:
 *     IBM Corporation - initial API and implementation
 *******************************************************************************/
package org.eclipse.team.internal.ccvs.ui.subscriber;

import org.eclipse.core.runtime.QualifiedName;
import org.eclipse.jface.action.*;
import org.eclipse.team.core.subscribers.TeamSubscriber;
import org.eclipse.team.internal.ccvs.core.CVSProviderPlugin;
import org.eclipse.team.internal.ccvs.ui.Policy;
import org.eclipse.team.ui.Utilities;
import org.eclipse.team.ui.sync.actions.DirectionFilterActionGroup;
import org.eclipse.ui.IActionBars;
import org.eclipse.ui.PartInitException;

public class CVSWorkspaceSynchronizeParticipant extends CVSSynchronizeParticipant {
	
	private DirectionFilterActionGroup modes;
	private Action commitAdapter;
	private Action updateAdapter;
	public final static QualifiedName ID = new QualifiedName("org.eclipse.team.cvs.ui.cvsworkspace-participant", "syncparticipant");
	
	protected void setSubscriber(TeamSubscriber subscriber) {
		super.setSubscriber(subscriber);
		modes = new DirectionFilterActionGroup(this, ALL_MODES);		
		commitAdapter = new CVSActionDelegate(new SubscriberCommitAction(), this);
		updateAdapter = new CVSActionDelegate(new WorkspaceUpdateAction(), this);
		Utilities.initAction(commitAdapter, "action.SynchronizeViewCommit.", Policy.getBundle());
		Utilities.initAction(updateAdapter, "action.SynchronizeViewUpdate.", Policy.getBundle());

	}
	
	/* (non-Javadoc)
	 * @see org.eclipse.team.ui.sync.SubscriberPage#setActionsBars(org.eclipse.ui.IActionBars)
	 */
	public void setActionsBars(IActionBars actionBars, IToolBarManager detailsToolbar) {
		if(actionBars != null) {
			IToolBarManager toolbar = actionBars.getToolBarManager();
		}
		if(detailsToolbar != null) {
			modes.fillToolBar(detailsToolbar);
			detailsToolbar.add(new Separator());		
			detailsToolbar.add(updateAdapter);
			detailsToolbar.add(commitAdapter);
		}
	}

	/* (non-Javadoc)
	 * @see org.eclipse.team.ui.sync.ISynchronizeParticipant#init(org.eclipse.team.ui.sync.ISynchronizeView, org.eclipse.team.core.ISaveContext)
	 */
	public void init(QualifiedName id) throws PartInitException {
		TeamSubscriber subscriber = CVSProviderPlugin.getPlugin().getCVSWorkspaceSubscriber(); 
		setSubscriber(subscriber);
	}

	/* (non-Javadoc)
	 * @see org.eclipse.team.ui.sync.ISynchronizeParticipant#saveState(org.eclipse.team.core.ISaveContext)
	 */
	public void saveState() {
		// no state to save
	}
}

Back to the top