Show
Ignore:
Timestamp:
08/18/07 07:18:58 (1 year ago)
Author:
merlimat
Message:

EclipseTracPlugin:

Added an action to add Trac server from "Trac navigator" view. Closes #1837

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/views/TracNavigator.java

    r2161 r2580  
    44 
    55import mm.eclipse.trac.Activator; 
     6import mm.eclipse.trac.Images; 
    67import mm.eclipse.trac.models.ITracListener; 
    78import mm.eclipse.trac.models.TracServer; 
    89import mm.eclipse.trac.models.TracServerList; 
    910import mm.eclipse.trac.models.WikiPage; 
     11import mm.eclipse.trac.server.NewTracServer; 
    1012import mm.eclipse.trac.views.actions.IActionsProvider; 
    1113import mm.eclipse.trac.views.actions.TracServerActionProvider; 
    1214import mm.eclipse.trac.views.actions.WikiPageActionsProvider; 
    1315 
     16import org.eclipse.jface.action.Action; 
    1417import org.eclipse.jface.action.IMenuListener; 
    1518import org.eclipse.jface.action.IMenuManager; 
     
    2528import org.eclipse.jface.viewers.Viewer; 
    2629import org.eclipse.jface.viewers.ViewerSorter; 
     30import org.eclipse.jface.wizard.WizardDialog; 
    2731import org.eclipse.swt.SWT; 
    2832import org.eclipse.swt.widgets.Composite; 
     
    4650    private IActionsProvider wikiPageActions; 
    4751     
     52    private Action newServerAction; 
     53     
    4854    class NameSorter extends ViewerSorter 
    4955    { 
     
    9197                IStructuredSelection selection = (IStructuredSelection) viewer 
    9298                        .getSelection(); 
     99                 
     100                if ( selection.isEmpty() ) 
     101                { 
     102                    manager.add( newServerAction ); 
     103                } 
    93104                 
    94105                tracServerActions.fillMenu( manager, selection ); 
     
    128139        tracServerActions = new TracServerActionProvider( viewer ); 
    129140        wikiPageActions = new WikiPageActionsProvider( viewer ); 
     141         
     142        newServerAction = new Action() { 
     143            public void run() 
     144            { 
     145                // Create the wizard 
     146                WizardDialog dialog = new WizardDialog( viewer.getControl().getShell(), 
     147                                                        new NewTracServer() ); 
     148                dialog.open(); 
     149            } 
     150        }; 
     151        newServerAction.setText( "Add a Trac server" ); 
     152        newServerAction.setImageDescriptor( Images.getDescriptor( Images.NewServer ) ); 
     153         
     154        IToolBarManager toolBarManager = getViewSite().getActionBars() 
     155                .getToolBarManager(); 
     156        toolBarManager.add( newServerAction ); 
     157         
     158        IMenuManager menuManager = getViewSite().getActionBars().getMenuManager(); 
     159        menuManager.add( newServerAction ); 
    130160    } 
    131161