﻿// List of cverlay tiles
document.write("<script type='text/javascript' src='JavaScript/Vector.js'></script>");
function TileList (theMap){
    var cnt = 0;
    var list = new Vector(0);
    var map = theMap;
    
    var baseZIndex = 10;
    
    this.addTile = addTile;
    this.deleteAllTiles = deleteAllTiles;
    this.deleteTileById = deleteTileById;
    
    this.getTileById = getTileById;
    this.getTileIndexById = getTileIndexById;
    this.switchZIndex = switchZIndex;
    
    function addTile(theTile){  
        theTile.setZIndex(baseZIndex + list.getSize() + 1);              
        list.addElement(theTile);                
    }
    
    function deleteAllTiles(){        
        for (var i = 0; i < list.getSize(); i++){
            var tile = list.getElementAt(i);
            tile.deleteTile();            
        }        
        list.removeAllElements();
    }
    
    function getTileById (id){
        var index = getTileIndexById(id);
        if (index > -1){
            return list.getElementAt(index);       
        }  
        return null;  
    }
    function getTileIndexById(id){
        var length = list.getSize();        
        for (var i = 0; i < length; i++){
            var tile = list.getElementAt(i);                        
            if (tile.getTileLayerId() == id){                
                return i;               
            }            
        }
        return -1;
    }
    function deleteTileById(id){        
        var index = getTileIndexById(id);
        if (index > -1){
            list.getElementAt(index).deleteTile();
            list.removeElementAt(index);                 
        }        
    }
    
    function switchZIndex(id1, id2){
        
        var tile1 = getTileById (id1);
        var tile2 = getTileById (id2);
        alert (tile1);
        if (tile1 ){
        var zIndex1 = tile1.getZIndex();
        var zIndex2 = tile2.getZIndex();
        alert (zIndex1);
        alert (zIndex2);
        tile1.setZIndex(zIndex2);
        tile2.setZIndex(zIndex1);
        }
    }
    
}

