Author: timotei
Date: Sun Jul 10 22:47:47 2011
New Revision: 50266
URL: http://svn.gna.org/viewcvs/wesnoth?rev=50266&view=rev
Log:
eclipse plugin: Tweak the internal_addNode function
to correctly set the new node's index and take
in account all cases when adding it to the list
Modified:
trunk/utils/umc_dev/org.wesnoth/src/org/wesnoth/builder/DependencyListBuilder.java
trunk/utils/umc_dev/org.wesnoth/src/org/wesnoth/builder/DependencyListNode.java
Modified:
trunk/utils/umc_dev/org.wesnoth/src/org/wesnoth/builder/DependencyListBuilder.java
URL:
http://svn.gna.org/viewcvs/wesnoth/trunk/utils/umc_dev/org.wesnoth/src/org/wesnoth/builder/DependencyListBuilder.java?rev=50266&r1=50265&r2=50266&view=diff
==============================================================================
---
trunk/utils/umc_dev/org.wesnoth/src/org/wesnoth/builder/DependencyListBuilder.java
(original)
+++
trunk/utils/umc_dev/org.wesnoth/src/org/wesnoth/builder/DependencyListBuilder.java
Sun Jul 10 22:47:47 2011
@@ -266,15 +266,41 @@
*/
private DependencyListNode internal_addNode( IFile file )
{
- DependencyListNode newNode = new DependencyListNode( file,
currentIndex_ );
- currentIndex_ += DependencyListNode.INDEX_STEP;
+ DependencyListNode newNode = new DependencyListNode( file, -1 );
if ( previous_ != null ){
+
+ // inserting is done between 2 nodes
+ if ( previous_.getNext( ) != null ){
+ newNode.setIndex(
+ (previous_.getIndex( ) +
+ previous_.getNext( ).getIndex( )) / 2 );
+
+ newNode.setNext( previous_.getNext( ) );
+ previous_.getNext( ).setPrevious( newNode );
+ } else {
+ newNode.setIndex( currentIndex_ );
+ currentIndex_ += DependencyListNode.INDEX_STEP;
+ }
+
previous_.setNext( newNode );
newNode.setPrevious( previous_ );
} else {
// no previous yet (== null)
// so we're making this the root node for this list
+
+ // check if we had a previous root node
+ DependencyListNode root = list_.get( ROOT_NODE_KEY );
+ if ( root != null ) {
+ root.setPrevious( newNode );
+ newNode.setNext( root );
+
+ newNode.setIndex( root.getIndex( ) -
DependencyListNode.INDEX_STEP );
+ } else {
+ newNode.setIndex( currentIndex_ );
+ currentIndex_ += DependencyListNode.INDEX_STEP;
+ }
+
list_.put( ROOT_NODE_KEY, newNode ); //$NON-NLS-1$
}
Modified:
trunk/utils/umc_dev/org.wesnoth/src/org/wesnoth/builder/DependencyListNode.java
URL:
http://svn.gna.org/viewcvs/wesnoth/trunk/utils/umc_dev/org.wesnoth/src/org/wesnoth/builder/DependencyListNode.java?rev=50266&r1=50265&r2=50266&view=diff
==============================================================================
---
trunk/utils/umc_dev/org.wesnoth/src/org/wesnoth/builder/DependencyListNode.java
(original)
+++
trunk/utils/umc_dev/org.wesnoth/src/org/wesnoth/builder/DependencyListNode.java
Sun Jul 10 22:47:47 2011
@@ -82,7 +82,7 @@
* Sets a new index for this node
* @param index The index to set
*/
- public void setIndex( int index )
+ protected void setIndex( int index )
{
index_ = index;
_______________________________________________
Wesnoth-commits mailing list
[email protected]
https://mail.gna.org/listinfo/wesnoth-commits