eclipse plugin: Some small fixes
This commit is contained in:
parent
71d9ce8052
commit
b075c8cfc3
2 changed files with 38 additions and 5 deletions
|
@ -90,6 +90,9 @@ public class DependencyTreeBuilder implements Serializable
|
|||
containers.add( project_ );
|
||||
|
||||
while( containers.isEmpty( ) == false ) {
|
||||
|
||||
// each container should start a new "branch"
|
||||
previous_ = null;
|
||||
IContainer container = containers.poll( );
|
||||
|
||||
IResource main_cfg = container.findMember( "_main.cfg" ); //$NON-NLS-1$
|
||||
|
@ -216,7 +219,7 @@ public class DependencyTreeBuilder implements Serializable
|
|||
// we found the place?
|
||||
if ( ResourceUtils.wmlFileNameCompare(
|
||||
fileName,
|
||||
leaf.getFile( ).getName( ) ) > 0 ) {
|
||||
leaf.getFile( ).getName( ) ) < 0 ) {
|
||||
|
||||
previous_ = leaf.getPrevious( );
|
||||
|
||||
|
@ -226,6 +229,20 @@ public class DependencyTreeBuilder implements Serializable
|
|||
newNode.setNext( leaf );
|
||||
leaf.setPrevious( newNode );
|
||||
|
||||
if ( leaf.getSon( ) != null ){
|
||||
newNode.setSon( leaf.getSon( ) );
|
||||
leaf.getSon( ).setParent( newNode );
|
||||
|
||||
leaf.setSon( null );
|
||||
}
|
||||
|
||||
if ( leaf.getParent( ) != null ) {
|
||||
newNode.setParent( leaf.getParent( ) );
|
||||
leaf.getParent( ).setSon( newNode );
|
||||
|
||||
leaf.setParent( null );
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -294,8 +311,14 @@ public class DependencyTreeBuilder implements Serializable
|
|||
{
|
||||
ProjectDependencyNode node = getNode( file );
|
||||
|
||||
node.getPrevious( ).setNext( node.getNext( ) );
|
||||
node.getNext( ).setPrevious( node.getPrevious( ) );
|
||||
// the node didn't even exist in the tree!?
|
||||
if ( node == null )
|
||||
return;
|
||||
|
||||
if ( node.getPrevious( ) != null )
|
||||
node.getPrevious( ).setNext( node.getNext( ) );
|
||||
if ( node.getNext( ) != null )
|
||||
node.getNext( ).setPrevious( node.getPrevious( ) );
|
||||
|
||||
tree_.remove( file.getProjectRelativePath( ).toString( ) );
|
||||
}
|
||||
|
|
|
@ -184,11 +184,20 @@ public class WesnothProjectBuilder extends IncrementalProjectBuilder
|
|||
projectCache_.getConfigs().remove( file.getName() );
|
||||
} else if ( deltaKind == IResourceDelta.ADDED ){
|
||||
ProjectDependencyNode newNode = tree.addNode( file );
|
||||
nodesToProcess.add( newNode );
|
||||
if ( newNode == null )
|
||||
Logger.getInstance( ).logError( "Couldn't create a new" +
|
||||
"PDT node for file: " + file.getFullPath( ).toString( ) );
|
||||
else
|
||||
nodesToProcess.add( newNode );
|
||||
} else if ( deltaKind == IResourceDelta.CHANGED ) {
|
||||
//TODO: check if the included directories have changed their
|
||||
// order
|
||||
nodesToProcess.add( tree.getNode( file ) );
|
||||
ProjectDependencyNode node = tree.getNode( file );
|
||||
if ( node == null )
|
||||
Logger.getInstance( ).logError( "Couldn't find file "
|
||||
+ file.getFullPath( ).toString( ) + " in PDT!." );
|
||||
else
|
||||
nodesToProcess.add( node );
|
||||
} else {
|
||||
Logger.getInstance( ).log( "unknown delta kind: " + deltaKind );
|
||||
}
|
||||
|
@ -212,6 +221,7 @@ public class WesnothProjectBuilder extends IncrementalProjectBuilder
|
|||
}
|
||||
});
|
||||
|
||||
foundCfg = ( !nodesToProcess.isEmpty( ) );
|
||||
// process nodes
|
||||
for ( ProjectDependencyNode node : nodesToProcess ) {
|
||||
checkResource( node.getFile( ), monitor );
|
||||
|
|
Loading…
Add table
Reference in a new issue