﻿Type.registerNamespace('DDTI.Web.Map.Toolbox');

DDTI.Web.Map.Toolbox.DTToolboxComponent = function(element) { 
    DDTI.Web.Map.Toolbox.DTToolboxComponent.initializeBase(this, [element]);
    this._activeTool = null;
}

DDTI.Web.Map.Toolbox.DTToolboxComponent.prototype = {
    initialize : function() {
        DDTI.Web.Map.Toolbox.DTToolboxComponent.callBaseMethod(this, 'initialize');
    },

    dispose : function() {
        $clearHandlers(this.get_element());
        DDTI.Web.Map.Toolbox.DTToolboxComponent.callBaseMethod(this, 'dispose');
    },

    get_activeTool : function() {
        return this._activeTool;
    },
    
    set_activeTool : function(value) {
        if (this._activeTool !== value) {
            this._activeTool = value;
            this.raisePropertyChanged('activeTool');
                                    
            $get('ctl00_ContentPlaceHolder1_MainToolBox_Buffer').style.border = '1px solid transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_Buffer').style.backgroundColor = 'transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_ClearSelection').style.border = '1px solid transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_ClearSelection').style.backgroundColor = 'transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_FullExtent').style.border = '1px solid transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_FullExtent').style.backgroundColor = 'transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_MeasureArea').style.border = '1px solid transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_MeasureArea').style.backgroundColor = 'transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_MeasureDistance').style.border = '1px solid transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_MeasureDistance').style.backgroundColor = 'transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_NextExtent').style.border = '1px solid transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_NextExtent').style.backgroundColor = 'transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_Pan').style.border = '1px solid transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_Pan').style.backgroundColor = 'transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_PreviousExtent').style.border = '1px solid transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_PreviousExtent').style.backgroundColor = 'transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_Print').style.border = '1px solid transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_Print').style.backgroundColor = 'transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_Save').style.border = '1px solid transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_Save').style.backgroundColor = 'transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_SelectByLine').style.border = '1px solid transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_SelectByLine').style.backgroundColor = 'transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_SelectByPoint').style.border = '1px solid transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_SelectByPoint').style.backgroundColor = 'transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_SelectByRectangle').style.border = '1px solid transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_SelectByRectangle').style.backgroundColor = 'transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_ZoomIn').style.border = '1px solid transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_ZoomIn').style.backgroundColor = 'transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_ZoomOut').style.border = '1px solid transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_ZoomOut').style.backgroundColor = 'transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_ZoomToSelection').style.border = '1px solid transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_ZoomToSelection').style.backgroundColor = 'transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_SelectedFeatureCalloutVisbility').style.border = '1px solid transparent';
            $get('ctl00_ContentPlaceHolder1_MainToolBox_SelectedFeatureCalloutVisbility').style.backgroundColor = 'transparent';

            switch (value) {
                case DDTI.Web.Map.Toolbox.DTToolTypes.Buffer:
                    PageMethods.SetActiveTool(DDTI.Web.Map.Toolbox.DTToolTypes.Buffer)
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_Buffer').style.border = '1px solid #6B8694';
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_Buffer').style.backgroundColor = '#CED7DE';
                    break;
                    
                case DDTI.Web.Map.Toolbox.DTToolTypes.ClearSelection:
                    PageMethods.SetActiveTool(DDTI.Web.Map.Toolbox.DTToolTypes.ClearSelection)
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_ClearSelection').style.border = '1px solid #6B8694';
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_ClearSelection').style.backgroundColor = '#CED7DE';
                    break;
                    
                case DDTI.Web.Map.Toolbox.DTToolTypes.FullExtent:
                    PageMethods.SetActiveTool(DDTI.Web.Map.Toolbox.DTToolTypes.FullExtent)
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_FullExtent').style.border = '1px solid #6B8694';
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_FullExtent').style.backgroundColor = '#CED7DE';
                    break;
                    
                case DDTI.Web.Map.Toolbox.DTToolTypes.MeasureArea:
                    PageMethods.SetActiveTool(DDTI.Web.Map.Toolbox.DTToolTypes.MeasureArea)
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_MeasureArea').style.border = '1px solid #6B8694';
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_MeasureArea').style.backgroundColor = '#CED7DE';
                    break;
                    
                case DDTI.Web.Map.Toolbox.DTToolTypes.MeasureDistance:
                    PageMethods.SetActiveTool(DDTI.Web.Map.Toolbox.DTToolTypes.MeasureDistance)
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_MeasureDistance').style.border = '1px solid #6B8694';
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_MeasureDistance').style.backgroundColor = '#CED7DE';
                    break;
                    
                case DDTI.Web.Map.Toolbox.DTToolTypes.NextExtent:
                    PageMethods.SetActiveTool(DDTI.Web.Map.Toolbox.DTToolTypes.NextExtent)
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_NextExtent').style.border = '1px solid #6B8694';
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_NextExtent').style.backgroundColor = '#CED7DE';
                    break;
                    
                case DDTI.Web.Map.Toolbox.DTToolTypes.Pan:
                    PageMethods.SetActiveTool(DDTI.Web.Map.Toolbox.DTToolTypes.Pan)
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_Pan').style.border = '1px solid #6B8694';
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_Pan').style.backgroundColor = '#CED7DE';
                    break;
                    
                case DDTI.Web.Map.Toolbox.DTToolTypes.PreviousExtent:
                    PageMethods.SetActiveTool(DDTI.Web.Map.Toolbox.DTToolTypes.PreviousExtent)
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_PreviousExtent').style.border = '1px solid #6B8694';
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_PreviousExtent').style.backgroundColor = '#CED7DE';
                    break;
                    
                case DDTI.Web.Map.Toolbox.DTToolTypes.Print:
                    PageMethods.SetActiveTool(DDTI.Web.Map.Toolbox.DTToolTypes.Print)
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_Print').style.border = '1px solid #6B8694';
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_Print').style.backgroundColor = '#CED7DE';
                    break;
                    
                case DDTI.Web.Map.Toolbox.DTToolTypes.Save:
                    PageMethods.SetActiveTool(DDTI.Web.Map.Toolbox.DTToolTypes.Save)
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_Save').style.border = '1px solid #6B8694';
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_Save').style.backgroundColor = '#CED7DE';
                    break;

                case DDTI.Web.Map.Toolbox.DTToolTypes.SelectByLine:
                    PageMethods.SetActiveTool(DDTI.Web.Map.Toolbox.DTToolTypes.SelectByLine)
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_SelectByLine').style.border = '1px solid #6B8694';
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_SelectByLine').style.backgroundColor = '#CED7DE';
                    break;
                    
                case DDTI.Web.Map.Toolbox.DTToolTypes.SelectByPoint:
                    PageMethods.SetActiveTool(DDTI.Web.Map.Toolbox.DTToolTypes.SelectByPoint)
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_SelectByPoint').style.border = '1px solid #6B8694';
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_SelectByPoint').style.backgroundColor = '#CED7DE';
                    break;
                    
                case DDTI.Web.Map.Toolbox.DTToolTypes.SelectByRectangle:
                    PageMethods.SetActiveTool(DDTI.Web.Map.Toolbox.DTToolTypes.SelectByRectangle)
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_SelectByRectangle').style.border = '1px solid #6B8694';
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_SelectByRectangle').style.backgroundColor = '#CED7DE';
                    break;
                    
                case DDTI.Web.Map.Toolbox.DTToolTypes.ZoomIn:
                    PageMethods.SetActiveTool(DDTI.Web.Map.Toolbox.DTToolTypes.ZoomIn)
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_ZoomIn').style.border = '1px solid #6B8694';
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_ZoomIn').style.backgroundColor = '#CED7DE';
                    break;
                    
                case DDTI.Web.Map.Toolbox.DTToolTypes.ZoomOut:
                    PageMethods.SetActiveTool(DDTI.Web.Map.Toolbox.DTToolTypes.ZoomOut)
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_ZoomOut').style.border = '1px solid #6B8694';
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_ZoomOut').style.backgroundColor = '#CED7DE';
                    break;
                    
                case DDTI.Web.Map.Toolbox.DTToolTypes.ZoomToSelection:
                    PageMethods.SetActiveTool(DDTI.Web.Map.Toolbox.DTToolTypes.ZoomToSelection)
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_ZoomToSelection').style.border = '1px solid #6B8694';
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_ZoomToSelection').style.backgroundColor = '#CED7DE';
                    break;
                    
                case DDTI.Web.Map.Toolbox.DTToolTypes.SelectedFeatureCalloutVisibility:
                    PageMethods.SetActiveTool(DDTI.Web.Map.Toolbox.DTToolTypes.SelectedFeatureCalloutVisibility)
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_SelectedFeatureCalloutVisbility').style.border = '1px solid #6B8694';
                    $get('ctl00_ContentPlaceHolder1_MainToolBox_SelectedFeatureCalloutVisbility').style.backgroundColor = '#CED7DE';
                    break;
                    
                default:
                    break;
            }
        }
    }
}

DDTI.Web.Map.Toolbox.DTToolboxComponent.registerClass('DDTI.Web.Map.Toolbox.DTToolboxComponent', Sys.UI.Control);

if (typeof(Sys) !== 'undefined') Sys.Application.notifyScriptLoaded();
if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();