Changeset 2016
- Timestamp:
- 02/21/07 12:56:23 (2 years ago)
- Files:
-
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/.classpath (modified) (1 diff)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/icons/error.gif (added)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/icons/newServer.png (added)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/icons/server_disconnected.png (added)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/icons/server.png (added)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/plugin.xml (modified) (3 diffs)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/Activator.java (modified) (1 diff)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/editors/WikiCompletionProcessor.java (modified) (9 diffs)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/editors/WikiContentOutlinePage.java (modified) (8 diffs)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/editors/WikiEditorInput.java (modified) (2 diffs)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/editors/WikiEditor.java (modified) (2 diffs)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/editors/WikiPreview.java (modified) (2 diffs)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/Images.java (added)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/Log.java (modified) (2 diffs)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/models/ITracListener.java (moved) (moved from eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/models/IWikiPageListener.java) (1 diff)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/models/ModelBase.java (modified) (2 diffs)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/models/TracServer.java (added)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/models/TracServerList.java (added)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/models/WikiPage.java (modified) (10 diffs)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/server (added)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/server/NewTracServer.java (added)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/server/NewTracServerPage.java (added)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/server/ServerView.java (added)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/util/DecoratingTableLabelProvider.java (added)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/util/WeakCollection.java (modified) (2 diffs)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/views/actions/CommitPage.java (modified) (2 diffs)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/views/actions/IActionsProvider.java (added)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/views/actions/OpenEditor.java (modified) (3 diffs)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/views/actions/TracServerActionProvider.java (added)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/views/actions/WikiPageActionsProvider.java (added)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/views/TracLabelDecorator.java (modified) (2 diffs)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/views/TracLabelProvider.java (modified) (4 diffs)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/views/TracNavigator.java (modified) (13 diffs)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/views/WikiPageHistory.java (modified) (3 diffs)
- eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/xmlrpc/Trac.java (modified) (2 diffs)
- eclipsetracplugin/tracrpcext/0.10/tracrpcext/__init__.py (modified) (1 diff)
- eclipsetracplugin/tracrpcext/0.10/tracrpcext/ticket.py (added)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/.classpath
r2004 r2016 2 2 <classpath> 3 3 <classpathentry path="src" kind="src"/> 4 <classpathentry path="org.eclipse.jdt.launching.JRE_CONTAINER /org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5" kind="con"/>4 <classpathentry path="org.eclipse.jdt.launching.JRE_CONTAINER" kind="con"/> 5 5 <classpathentry path="org.eclipse.pde.core.requiredPlugins" kind="con"/> 6 6 <classpathentry path="bin" kind="output"/> eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/plugin.xml
r2003 r2016 33 33 id="mm.eclipse.trac.views.WikiPageHistory" 34 34 name="Wiki Page History"/> 35 <view 36 allowMultiple="false" 37 category="mm.eclipse.trac" 38 class="mm.eclipse.trac.server.ServerView" 39 icon="icons/server.png" 40 id="mm.eclipse.trac.server.ServerView" 41 name="Trac Servers"/> 35 42 </extension> 36 43 <extension … … 44 51 state="true"> 45 52 <enablement> 46 <objectClass name="mm.eclipse.trac.models. WikiPage"/>53 <objectClass name="mm.eclipse.trac.models.ModelBase"/> 47 54 </enablement> 48 55 </decorator> … … 87 94 name="Trac"/> 88 95 </extension> 96 <extension 97 point="org.eclipse.ui.newWizards"> 98 <category 99 id="mm.eclipse.trac.server" 100 name="Trac"/> 101 <wizard 102 category="mm.eclipse.trac.server" 103 class="mm.eclipse.trac.server.NewTracServer" 104 finalPerspective="Trac" 105 icon="icons/trac_16.png" 106 id="mm.eclipse.trac.server.NewTracServer" 107 name="Add a Trac Server" 108 project="false"/> 109 </extension> 89 110 90 111 </plugin> eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/Activator.java
r2003 r2016 81 81 * @return the image descriptor 82 82 */ 83 p ublicstatic ImageDescriptor getImageDescriptor( String path )83 protected static ImageDescriptor getImageDescriptor( String path ) 84 84 { 85 85 return imageDescriptorFromPlugin( PLUGIN_ID, path ); eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/editors/WikiCompletionProcessor.java
r2003 r2016 15 15 16 16 import mm.eclipse.trac.Activator; 17 import mm.eclipse.trac.Images; 17 18 import mm.eclipse.trac.editors.model.WikiMacro; 18 import mm.eclipse.trac.xmlrpc.Trac; 19 20 import org.eclipse.jface.resource.ImageDescriptor; 21 import org.eclipse.jface.resource.ImageRegistry; 19 import mm.eclipse.trac.models.WikiPage; 20 22 21 import org.eclipse.jface.text.BadLocationException; 23 22 import org.eclipse.jface.text.IDocument; … … 38 37 import org.eclipse.jface.text.templates.TemplateException; 39 38 import org.eclipse.jface.text.templates.TemplateProposal; 40 import org.eclipse.swt.graphics.Image;41 39 42 40 public class WikiCompletionProcessor implements IContentAssistProcessor … … 58 56 } 59 57 60 private static final String TemplateIcon = "icons/template.gif";61 62 private static final String WordIcon = "icons/word.png";63 64 private static final String MacroIcon = "icons/macro.gif";65 66 58 private static final String TemplateContext = "mm.eclipse.trac.templates"; 67 59 68 private static List<WikiMacro>macros = null;60 private List<WikiMacro> macros = null; 69 61 70 62 private final WikiSourceEditor editor; … … 129 121 private List<ICompletionProposal> computeMacroProposals( ITextViewer viewer, 130 122 IRegion region, String prefix ) 131 { 123 { 132 124 List<ICompletionProposal> result = new ArrayList<ICompletionProposal>(); 133 125 … … 141 133 ICompletionProposal prop = new CompletionProposal( replace, region 142 134 .getOffset(), prefix.length(), replace.length() - 3, 143 getImage( MacroIcon),135 Images.get( Images.Macro ), 144 136 macro.getName(), info, 145 137 "Bla bla bla bla" ); … … 198 190 result.add( new CompletionProposal( word, region.getOffset(), 199 191 prefix.length(), word.length(), 200 getImage( WordIcon), null, null, null ) );192 Images.get( Images.Word ), null, null, null ) ); 201 193 } 202 194 … … 235 227 236 228 matches.add( new TemplateProposal( template, context, region, 237 getImage( TemplateIcon), 1 ) );229 Images.get( Images.Template ), 1 ) ); 238 230 } 239 231 … … 242 234 } 243 235 244 private staticList<WikiMacro> getMacros()236 private List<WikiMacro> getMacros() 245 237 { 246 238 if ( macros != null ) return macros; 247 239 248 Map<String, String> macroMap = Trac.getInstance().getWikiExt().getMacros(); 240 WikiPage page = ((WikiEditorInput) editor.getEditorInput()).getWikiPage(); 241 242 Map<String, String> macroMap = page.getServer().getWikiExt().getMacros(); 249 243 250 244 macros = new ArrayList<WikiMacro>( macroMap.size() ); … … 279 273 } 280 274 281 /**282 * Always return the default image.283 */284 private Image getImage( String icon )285 {286 ImageRegistry registry = Activator.getDefault().getImageRegistry();287 Image image = registry.get( icon );288 if ( image == null )289 {290 ImageDescriptor desc = Activator.getImageDescriptor( icon );291 registry.put( icon, desc );292 image = registry.get( icon );293 }294 return image;295 }296 297 275 public IContextInformation[] computeContextInformation( ITextViewer viewer, int offset ) 298 276 { eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/editors/WikiContentOutlinePage.java
r2003 r2016 1 1 package mm.eclipse.trac.editors; 2 2 3 import java.text.MessageFormat; 4 5 import mm.eclipse.trac.Activator; 6 import mm.eclipse.trac.Log; 3 import mm.eclipse.trac.Images; 7 4 import mm.eclipse.trac.editors.model.WikiSection; 8 5 import mm.eclipse.trac.editors.model.WikiTextParser; 9 6 10 import org.eclipse.jface.text.BadPositionCategoryException;11 7 import org.eclipse.jface.text.DefaultPositionUpdater; 12 import org.eclipse.jface.text.DocumentEvent;13 8 import org.eclipse.jface.text.DocumentPartitioningChangedEvent; 14 9 import org.eclipse.jface.text.IDocument; … … 16 11 import org.eclipse.jface.text.IDocumentPartitioningListenerExtension2; 17 12 import org.eclipse.jface.text.IPositionUpdater; 18 import org.eclipse.jface.text.ITypedRegion;19 import org.eclipse.jface.text.Position;20 13 import org.eclipse.jface.viewers.AbstractTreeViewer; 21 14 import org.eclipse.jface.viewers.IStructuredContentProvider; … … 32 25 33 26 public class WikiContentOutlinePage extends ContentOutlinePage implements 34 IDocumentPartitioningListener, IDocumentPartitioningListenerExtension2, 35 IPositionUpdater 27 IDocumentPartitioningListener, IDocumentPartitioningListenerExtension2 36 28 { 37 private IDocumentProvider provider;29 private WikiSourceEditor editor; 38 30 39 private WikiSourceEditor editor; 40 41 private IPositionUpdater positionsUpdater; 31 private IPositionUpdater positionsUpdater; 42 32 43 33 public WikiContentOutlinePage( IDocumentProvider provider, WikiSourceEditor editor ) 44 34 { 45 this.provider = provider;46 35 this.editor = editor; 47 36 } … … 60 49 positionsUpdater = new DefaultPositionUpdater( WikiTextParser.PositionCategory ); 61 50 document.addPositionUpdater( positionsUpdater ); 62 // document.addPositionUpdater( this );63 64 51 document.addDocumentPartitioningListener( this ); 65 52 … … 78 65 { 79 66 WikiSection section = (WikiSection) obj; 80 String s = MessageFormat81 .format( "editor.selectAndReveal( {0}, {1} );", section82 .getOffset(), section.getLength() );83 Log.info( s );84 85 67 editor.selectAndReveal( section.getOffset(), section.getLength() ); 86 68 } … … 108 90 109 91 public void documentPartitioningChanged( IDocument document ) 110 {111 Log.info( "Has changed!" );112 /*113 * try { Position[] newpositions = document .getPositions(114 * WikiPartitionScanner.SectionToken );115 *116 * if ( positions != null ) {117 */118 // document partitioning changed, wholesale replace119 /*120 * }121 *122 * positions = newpositions; } catch ( BadPositionCategoryException e ) {123 * Log.error( "Unexpected error in RawPartitonModel::updatePositions", e );124 * positions = new Position[0]; }125 */126 }127 128 /**129 * The manipulation described by the document event will be performed.130 *131 * @param event132 * the document event describing the document change133 */134 public void documentAboutToBeChanged( DocumentEvent event )135 92 {} 136 137 /**138 * The manipulation described by the document event has been performed.139 *140 * @param event141 * the document event describing the document change142 */143 public void documentChanged( DocumentEvent event )144 {145 try146 {147 for ( Position p : event.getDocument()148 .getPositions( WikiTextParser.PositionCategory ) )149 {150 Log.info( "Position: " + p.offset + ", " + p.length );151 }152 } catch ( BadPositionCategoryException e )153 {154 // TODO Auto-generated catch block155 e.printStackTrace();156 }157 }158 159 public void update( DocumentEvent event )160 {161 Log.info( "Changed position:" + event.getOffset() );162 163 IDocument doc = editor.getDocument();164 try165 {166 for ( Position p : doc.getPositions( WikiTextParser.PositionCategory ) )167 {168 p.offset += 5;169 Log.info( "Update Position: " + p.offset + ", " + p.length );170 }171 } catch ( BadPositionCategoryException e )172 {173 // TODO Auto-generated catch block174 e.printStackTrace();175 }176 177 WikiSection rootSection = (WikiSection) getTreeViewer().getInput();178 179 ITypedRegion region = doc.getDocumentPartitioner()180 .getPartition( event.getOffset() );181 // Log.info( "Found region: " + region.getType() + " - " +182 // region.getOffset() );183 184 // WikiSection current = rootSection.find( event.getOffset(), -1, null185 // );186 // if ( current != null )187 // {188 // Log.info( "We are in section: " + current.getName() );189 // }190 }191 93 192 94 // //////////////////////////////////////////////////////////// … … 229 131 { 230 132 231 private static final Image stepIcon = createImage( "step.gif" );232 233 public static Image createImage( String icon )234 {235 return Activator.getImageDescriptor( "icons/" + icon ).createImage();236 }237 238 133 public String getText( Object element ) 239 134 { … … 243 138 public Image getImage( Object element ) 244 139 { 245 if ( element instanceof WikiSection ) return stepIcon;140 if ( element instanceof WikiSection ) return Images.get( Images.Step ); 246 141 return super.getImage( element ); 247 142 } eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/editors/WikiEditorInput.java
r2003 r2016 4 4 package mm.eclipse.trac.editors; 5 5 6 import mm.eclipse.trac. Activator;6 import mm.eclipse.trac.Images; 7 7 import mm.eclipse.trac.models.WikiPage; 8 8 … … 55 55 public ImageDescriptor getImageDescriptor() 56 56 { 57 return Activator.getImageDescriptor( "icons/trac_16.png");57 return Images.getDescriptor( Images.Trac16 ); 58 58 } 59 59 eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/editors/WikiEditor.java
r2003 r2016 2 2 3 3 import mm.eclipse.trac.Log; 4 import mm.eclipse.trac.models.WikiPage; 4 5 5 6 import org.eclipse.core.resources.IMarker; … … 177 178 String editorText = editor.getDocumentProvider() 178 179 .getDocument( editor.getEditorInput() ).get(); 179 wikiPreview.showContent( editorText ); 180 WikiPage page = (WikiPage)((WikiEditorInput)editor.getEditorInput()).getWikiPage(); 181 wikiPreview.showContent( page, editorText ); 180 182 wikiPreview.setFocus(); 181 183 } eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/editors/WikiPreview.java
r2003 r2016 2 2 3 3 import mm.eclipse.trac.Log; 4 import mm.eclipse.trac. xmlrpc.Trac;4 import mm.eclipse.trac.models.WikiPage; 5 5 6 6 import org.eclipse.swt.SWT; … … 55 55 } 56 56 57 public void showContent( String wikiSource )57 public void showContent( WikiPage page, String wikiSource ) 58 58 { 59 59 try 60 60 { 61 62 String htmlContent = Trac.getInstance().getWiki().wikiToHtml( 61 String htmlContent = page.getServer().getWiki().wikiToHtml( 63 62 wikiSource ); 64 63 65 64 String content; 66 String serverUrl = Trac.getInstance().getServerURL();65 String serverUrl = page.getServer().getUrl().toString(); 67 66 if ( !serverUrl.endsWith( "/" ) ) 68 67 serverUrl += "/"; eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/Log.java
r2003 r2016 17 17 public static void warning( String message ) 18 18 { 19 log( Status.WARNING, message, null ); 19 warning( message, null ); 20 } 21 22 public static void warning( String message, Exception e ) 23 { 24 log( Status.WARNING, message, e ); 20 25 } 21 26 … … 27 32 private static void log( int level, String message, Exception e ) 28 33 { 29 Activator.getDefault().getLog() 30 .log( 31 new Status( level, Activator.PLUGIN_ID, Status.OK, 32 message, e ) ); 34 Activator.getDefault().getLog().log( 35 new Status( level, Activator.PLUGIN_ID, 36 Status.OK, message, e ) ); 33 37 } 34 38 } eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/models/ITracListener.java
r2003 r2016 8 8 * 9 9 */ 10 public interface I WikiPageListener10 public interface ITracListener 11 11 { 12 12 /** 13 13 * Notify when the observed page gets modified. 14 14 * 15 * @param page15 * @param resource 16 16 * The modified wiki page. 17 17 */ 18 void wikiPageChanged( Object page );18 void tracResourceModified( Object resource ); 19 19 20 20 } eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/models/ModelBase.java
r2003 r2016 12 12 public abstract class ModelBase 13 13 { 14 private WeakCollection<I WikiPageListener> listeners;14 private WeakCollection<ITracListener> listeners; 15 15 16 public void addListener( I WikiPageListener listener )16 public void addListener( ITracListener listener ) 17 17 { 18 if ( listeners == null ) 19 listeners = new WeakCollection<IWikiPageListener>(); 18 if ( listeners == null ) listeners = new WeakCollection<ITracListener>(); 20 19 21 20 listeners.add( listener ); 22 21 } 23 22 24 public void removeListener( I WikiPageListener listener )23 public void removeListener( ITracListener listener ) 25 24 { 26 25 if ( listeners != null ) … … 32 31 protected void notifyChanged() 33 32 { 34 for ( IWikiPageListener listener : listeners ) 35 listener.wikiPageChanged( this ); 33 if ( listeners == null ) return; 34 /* 35 Display.getDefault().asyncExec( new Runnable() { 36 public void run() 37 { 38 */ for ( ITracListener listener : listeners ) 39 listener.tracResourceModified( this ); 40 /* } 41 } ); */ 36 42 } 37 43 eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/models/WikiPage.java
r2003 r2016 10 10 import java.util.TreeSet; 11 11 12 import mm.eclipse.trac.xmlrpc.Trac;13 12 import mm.eclipse.trac.xmlrpc.WikiExt; 14 13 … … 17 16 public class WikiPage extends ModelBase implements IAdaptable 18 17 { 18 private TracServer server; 19 19 20 private String fullName; 20 21 private boolean exists = false; … … 28 29 private List<WikiPageVersion> versions = null; 29 30 30 public WikiPage( String fullName, boolean exists ) 31 { 32 this.fullName = fullName; 33 this.exists = exists; 34 35 WikiExt wikiExt = Trac.getInstance().getWikiExt(); 36 this.hasChildren = wikiExt.hasChildren( fullName ); 37 } 38 39 public WikiPage( String fullName, boolean exists, boolean hasChildren ) 40 { 31 public WikiPage( TracServer server, String fullName, boolean exists ) 32 { 33 this( server, fullName, exists, server.getWikiExt().hasChildren( fullName ) ); 34 } 35 36 public WikiPage( TracServer server, String fullName, boolean exists, 37 boolean hasChildren ) 38 { 39 this.server = server; 41 40 this.fullName = fullName; 42 41 this.exists = exists; … … 44 43 } 45 44 46 public WikiPage( String fullName ) 47 { 48 this( fullName, true ); 45 public WikiPage( TracServer server, String fullName ) 46 { 47 this( server, fullName, true ); 48 } 49 50 /** 51 * @return the server 52 */ 53 public TracServer getServer() 54 { 55 return server; 49 56 } 50 57 … … 76 83 public void addChild( WikiPage child ) 77 84 { 78 if ( children == null ) 79 children = new ArrayList<WikiPage>(); 85 if ( children == null ) children = new ArrayList<WikiPage>(); 80 86 81 87 children.add( child ); 82 88 child.parent = this; 89 notifyChanged(); 83 90 } 84 91 … … 90 97 public Collection<WikiPage> getChildren() 91 98 { 92 if ( children != null ) 93 return children; 99 if ( children != null ) return children; 94 100 95 101 children = new ArrayList<WikiPage>(); 96 WikiExt wikiExt = Trac.getInstance().getWikiExt();102 WikiExt wikiExt = server.getWikiExt(); 97 103 98 104 Map<String, Map<String, Boolean>> childrenMap = wikiExt.getChildren( fullName ); … … 104 110 boolean exists = attrs.get( "exists" ); 105 111 boolean hasChildren = attrs.get( "hasChildren" ); 106 children.add( new WikiPage( name, exists, hasChildren ) );112 children.add( new WikiPage( server, name, exists, hasChildren ) ); 107 113 } 114 108 115 return children; 109 116 } … … 121 128 public String getContent() 122 129 { 123 if ( content == null ) 124 content = Trac.getInstance().getWiki().getPage( fullName ); 130 if ( content == null ) content = server.getWiki().getPage( fullName ); 125 131 return content; 126 132 } … … 143 149 Map<String, String> attributes = new HashMap<String, String>(); 144 150 attributes.put( "comment", comment ); 145 Trac.getInstance().getWiki().putPage( fullName, content, attributes );151 server.getWiki().putPage( fullName, content, attributes ); 146 152 147 153 // Should refresh with newly created version … … 153 159 public List<WikiPageVersion> getVersions() 154 160 { 155 if ( versions != null ) 156 return versions; 161 if ( versions != null ) return versions; 157 162 158 163 versions = new ArrayList<WikiPageVersion>(); 159 Object[] remoteVersions = Trac.getInstance().getWikiExt() 160 .getPageVersions( fullName ); 164 Object[] remoteVersions = server.getWikiExt().getPageVersions( fullName ); 161 165 162 166 for ( Object o : remoteVersions ) eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/util/WeakCollection.java
r2003 r2016 199 199 200 200 /** 201 * @param < T>201 * @param <E> 202 202 * @param a 203 203 * @return 204 * @see java.util.Collection#toArray(T[]) 205 */ 206 public <T> T[] toArray( T[] a ) 207 { 208 T[] array; 204 * @see java.util.Collection#toArray(E[]) 205 */ 206 @SuppressWarnings("unchecked") 207 public <E> E[] toArray( E[] a ) 208 { 209 Object[] array; 209 210 if ( a.length >= data.size() ) 210 211 array = a; 211 else array = (T[])new Object[data.size()];212 else array = new Object[data.size()]; 212 213 213 214 int i = 0; … … 215 216 array[i++] = ((WeakReference<T>) item).get(); 216 217 217 return array;218 return (E[]) array; 218 219 } 219 220 eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/views/actions/CommitPage.java
r2003 r2016 1 1 package mm.eclipse.trac.views.actions; 2 2 3 import mm.eclipse.trac. Activator;3 import mm.eclipse.trac.Images; 4 4 import mm.eclipse.trac.Log; 5 5 import mm.eclipse.trac.models.WikiPage; … … 9 9 import org.eclipse.jface.viewers.ISelection; 10 10 import org.eclipse.jface.viewers.IStructuredSelection; 11 import org.eclipse.jface.viewers. TreeViewer;11 import org.eclipse.jface.viewers.StructuredViewer; 12 12 import org.eclipse.jface.window.Window; 13 13 14 14 public class CommitPage extends Action 15 15 { 16 private static final String ImagePath = "icons/page-commit.gif";16 private final StructuredViewer viewer; 17 17 18 private final TreeViewer viewer; 19 20 public CommitPage( TreeViewer viewer ) 18 public CommitPage( StructuredViewer viewer ) 21 19 { 22 20 this.viewer = viewer; 23 21 setText( "Commit page" ); 24 22 setToolTipText( "Commit page in Trac database" ); 25 setImageDescriptor( Activator.getImageDescriptor( ImagePath) );23 setImageDescriptor( Images.getDescriptor( Images.PageCommit ) ); 26 24 } 27 25 eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/views/actions/OpenEditor.java
r2003 r2016 13 13 import org.eclipse.jface.viewers.ISelection; 14 14 import org.eclipse.jface.viewers.IStructuredSelection; 15 import org.eclipse.jface.viewers.TreeViewer; 15 import org.eclipse.jface.viewers.StructuredViewer; 16 import org.eclipse.swt.SWT; 16 17 import org.eclipse.ui.IWorkbenchPage; 17 18 import org.eclipse.ui.IWorkbenchWindow; … … 26 27 public class OpenEditor extends Action implements IDoubleClickListener 27 28 { 28 TreeViewer viewer;29 StructuredViewer viewer; 29 30 30 public OpenEditor( TreeViewer viewer )31 public OpenEditor( StructuredViewer viewer ) 31 32 { 32 33 this.viewer = viewer; 33 34 setText( "Open" ); 34 35 setToolTipText( "Open wiki page in editor." ); 36 setAccelerator( SWT.F3 ); 35 37 viewer.addDoubleClickListener( this ); 36 38 } … … 49 51 { 50 52 WikiPage page = (WikiPage) obj; 51 Log.info( "Opening: " + page );52 53 53 54 WikiEditorInput wikiEditorInput = new WikiEditorInput( page ); eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/views/TracLabelDecorator.java
r2003 r2016 9 9 package mm.eclipse.trac.views; 10 10 11 import mm.eclipse.trac.Activator; 11 import mm.eclipse.trac.Images; 12 import mm.eclipse.trac.models.TracServer; 12 13 import mm.eclipse.trac.models.WikiPage; 13 14 14 import org.eclipse.jface.resource.ImageDescriptor;15 15 import org.eclipse.jface.viewers.IDecoration; 16 16 import org.eclipse.jface.viewers.ILabelProviderListener; … … 27 27 { 28 28 29 /** The integer value representing the placement options */30 private static int quadrant = IDecoration.BOTTOM_RIGHT;31 32 /** The icon image location in the project folder */33 private static String iconPath = "icons/modified.png";34 35 /**36 * The image description used in37 * <code>addOverlay(ImageDescriptor, int)</code>38 */39 private ImageDescriptor descriptor = Activator.getImageDescriptor( iconPath );40 41 29 public void decorate( Object element, IDecoration decoration ) 42 30 { 43 WikiPage page = (WikiPage)element; 44 if ( page.isDirty() ) 31 if ( element instanceof TracServer ) 45 32 { 46 decoration.addOverlay( descriptor, quadrant ); 33 TracServer server = (TracServer) element; 34 if ( !server.isValid() ) 35 decoration.addOverlay( Images.getDescriptor( Images.Error ), 36 IDecoration.TOP_LEFT ); 37 38 } 39 else if ( element instanceof WikiPage ) 40 { 41 WikiPage page = (WikiPage) element; 42 if ( page.isDirty() ) 43 { 44 decoration.addOverlay( Images.getDescriptor( Images.Modified ), 45 IDecoration.BOTTOM_RIGHT ); 46 } 47 47 } 48 48 } eclipsetracplugin/eclipse/trunk/mm.eclipse.trac/src/mm/eclipse/trac/views/TracLabelProvider.java
r2003 r2016 4 4 package mm.eclipse.trac.views; 5 5 6 import mm.eclipse.trac.Activator; 6 import mm.eclipse.trac.Images; 7 import mm.eclipse.trac.models.TracServer; 8 import mm.eclipse.trac.models.TracServerList; 7 9 import mm.eclipse.trac.models.WikiPage; 8 10 … … 13 15 14 16 /** 15 * @author mat17 * @author Matteo Merli 16 18 * 17 19 */ 18 public class TracLabelProvider extends LabelProvider 20 public class TracLabelProvider extends LabelProvider 19 21 { 20 22 23 @Override 21 24 public String getText( Object obj ) 22 <
