    var ObjMWpp = {};
    var MWppACROSS  = 1; var MWppDOWN = 1;
    var classMatWizard = Class.create({
        initialize: function(id, data)
        {
            this.SETUP = Object.extend({
                mwpp_gap_fixed: 0,
                mwpp_gap_value_percent: 75,
                mwpp_gap_value_fix_inch: 1,
                mwpp_gap_value_fix_cm: 2.5,
                mwpp_gap_value_fix_mm: 25,
                mwpp_topmat_fixed: 1,
                mwpp_middlemat_fixed: 1,
                mwpp_bottommat_fixed: 1,
                mwpp_topmat_value_fix_inch: 2.5,
                mwpp_topmat_value_fix_cm: 6.3,
                mwpp_topmat_value_fix_mm: 63,
                mwpp_topmat_value_min_inch: 2,
                mwpp_topmat_value_min_cm: 5,
                mwpp_topmat_value_min_mm: 50,
                mwpp_topmat_value_default_inch: 3,
                mwpp_topmat_value_default_cm: 7.5,
                mwpp_topmat_value_default_mm: 75,
                mwpp_bottommat_value_default_inch: 1,
                mwpp_bottommat_value_default_cm: 2.5,
                mwpp_bottommat_value_default_mm: 25,
                mwpp_bottommat_value_fix_inch: 0.5,
                mwpp_bottommat_value_fix_cm: 1.27,
                mwpp_bottommat_value_fix_mm: 12.7,
                mwpp_across_default: 1,
                mwpp_down_default: 1,
                mwpp_width_value_default_inch: 3,
                mwpp_width_value_default_cm: 2.5,
                mwpp_width_value_default_mm: 25,
                mwpp_height_value_default_inch: 3,
                mwpp_height_value_default_cm: 2.5,
                mwpp_height_value_default_mm: 25
            }, data || {});
            
            //MAT
            this.TOPMAT_DEPTH = this.SETUP.mwpp_topmat_fixed>0?Number(eval("this.SETUP.mwpp_topmat_value_fix_"+ MEASUREMENT.measure_unit)):Number(eval("this.SETUP.mwpp_topmat_value_default_"+ MEASUREMENT.measure_unit));
            
            this.ACROSS = MWppACROSS;
            this.DOWN   = MWppDOWN;

            this.minWidth  = Number(eval("this.SETUP.mwpp_width_value_default_"+ MEASUREMENT.measure_unit));
            this.minHeight = Number(eval("this.SETUP.mwpp_height_value_default_"+ MEASUREMENT.measure_unit));
        
            //HTML
            this.element  = $(id);
            
            // Controls
            this.controls = {
                check : {
                    chkAllSize : $('mwpp_all_size')
                },
                slt   : {
                    sltAcross  :  $('mwpp-across'),
                    sltDown    :  $('mwpp-down')
                } 
            }
            // run
            this.initAperture();
            this.html();
            this.initEvent();
            Event.fire(this.element, 'on:change');
        },
        //--- Init
        initAperture:function()
        {
            if(XWIZ.FRONT.SETUP.LAYOUT.LAYOUT.count_image.value>1 && this.ACROSS==1 && this.DOWN==1){
                COUNT_IMAGE = XWIZ.FRONT.SETUP.LAYOUT.LAYOUT.count_image.value;
                var ACROSS = 1, DOWN = 1;
                for(var index=2;index<=COUNT_IMAGE;index++){
                    var a = Number(XWIZ.FRONT.SETUP.IMAGE[index-1].top.value) + Number(XWIZ.FRONT.SETUP.IMAGE[index-1].width.value/2);
                    var b = Number(XWIZ.FRONT.SETUP.IMAGE[index].top.value) + Number(XWIZ.FRONT.SETUP.IMAGE[index].width.value/2);
                    if(a==b)
                        ACROSS++;
                    else
                        break;
                }
                this.ACROSS = ACROSS;
                this.DOWN   = COUNT_IMAGE/ACROSS;
            }
        },
        initEvent: function()
        {
            Event.observe(this.controls.slt.sltAcross, 'change', function(e){
                this.handlerApertureSelector();
            }.bindAsEventListener(this));
            Event.observe(this.controls.slt.sltDown, 'change', function(e){
                this.handlerApertureSelector();
            }.bindAsEventListener(this));
            
            Event.observe(this.element, 'on:change', function(e){
                if(XWIZ.FRONT.SETUP.LAYOUT.LAYOUT.count_image.value==1){
                    this.controls.slt.sltAcross.selectedIndex = this.SETUP.mwpp_across_default-1;
                    this.controls.slt.sltDown.selectedIndex   = this.SETUP.mwpp_down_default-1;
                    this.handlerApertureSelector();
                }
            }.bindAsEventListener(this));
        },
        //--- Handler
        handlerApertureSelector : function()
        {
            if(XWIZ.FRONT.SETUP.LAYOUT.LAYOUT.count_image.value==1){
                this.TOPMAT_DEPTH = Number(eval("this.SETUP.mwpp_topmat_value_default_"+ MEASUREMENT.measure_unit));
            }
            MWppACROSS = this.ACROSS = Number(this.controls.slt.sltAcross.value);
            MWppDOWN   = this.DOWN   = Number(this.controls.slt.sltDown.value);   
            this.html();
            this.prepareProject();
        },
        //---
        handlerShape: function(index, element)
        {
            var COUNT_IMAGE = Number(this.ACROSS)*Number(this.DOWN);   
            var shape = element.value=="RECTANGLE"?1:0;
            var name  = element.value=="RECTANGLE"?"OVAL":"RECTANGLE";

            if(index>0){
                XWIZ.FRONT.SETUP.IMAGE[index].shape.value = shape; 
                element.value                             = name; 
            }
            else{
                    $("mwpp-size-shape-0").value              = name;
                for(var index=1;index<=COUNT_IMAGE;index++){
                    if(Object.isElement($("mwpp-size-"+index)) && $("mwpp-size-"+index).checked){
                        XWIZ.FRONT.SETUP.IMAGE[index].shape.value = shape;
                        $("mwpp-size-shape-"+index).value     = name;
                    }
                }
            }
            this.draw_project();
        },
        handlerUpdateSizes: function() 
        {
            var COUNT_IMAGE = Number(this.ACROSS)*Number(this.DOWN);   
        
            if(COUNT_IMAGE==1){
                if(Number($F("mwpp-size-width-0"))>0 && Number($F("mwpp-size-height-0"))>0){
                    XWIZ.FRONT.SETUP.IMAGE[1].width.value  = $F("mwpp-size-width-0");
                    XWIZ.FRONT.SETUP.IMAGE[1].height.value = $F("mwpp-size-height-0");
                    this.prepareProject();
                }
                return;
            }

            if($("mwpp_all_size").checked){
                for(var index=1;index<=COUNT_IMAGE;index++){
                    if(Object.isElement($("mwpp-size-"+index))){
                        $("mwpp-size-width-"+index).value  = XWIZ.FRONT.SETUP.IMAGE[index].width.value  = $F("mwpp-size-width-0");
                        $("mwpp-size-height-"+index).value = XWIZ.FRONT.SETUP.IMAGE[index].height.value = $F("mwpp-size-height-0");
                    }
                }
                this.prepareProject();
                return;
            }
            
            var CHECKED = 0;
            for(var index=1;index<=COUNT_IMAGE;index++){
                if(Object.isElement($("mwpp-size-"+index)) && $("mwpp-size-"+index).checked){
                    XWIZ.FRONT.SETUP.IMAGE[index].width.value  = $F("mwpp-size-width-"+index);
                    XWIZ.FRONT.SETUP.IMAGE[index].height.value = $F("mwpp-size-height-"+index);
                    CHECKED++;
                }
            }
            if(CHECKED>0)
                this.prepareProject();
            else
                fAlert(__("Attention"), __("Select an opening!"));
                
            return;
        },
        handlerCheckAll: function(element)
        {
            var COUNT_IMAGE = Number(this.ACROSS)*Number(this.DOWN);   
            for(var index=1;index<=COUNT_IMAGE;index++){
                if(Object.isElement($("mwpp-size-"+index))){
                    $("mwpp-size-"+index).checked = element.checked;
                }
            }
        },
        html: function()
        {
            var _width = this.ACROSS==4?35:(this.ACROSS==3?60:115);
            
            this.controls.slt.sltAcross.selectedIndex = this.ACROSS-1;
            this.controls.slt.sltDown.selectedIndex   = this.DOWN-1;
            //-
            if(this.ACROSS>1 || this.DOWN>1){
                var TABLE = new Element('table', {'id':'mwpp-tbl-left', "cellpadding":1, "cellspacing":1}).setStyle({width:'100%'});
                var TBODY = new Element('tbody');
                var TR    = []; var TD        = []; 
                var P     = []; var P_CONTENT = [];
                
                var index = 1;
                for(var iTR=0;iTR<this.DOWN;iTR++){
                    TR[iTR] = new Element('tr');
                    TD[iTR] = []; P[iTR] = []; P_CONTENT[iTR] = [];   // INIT
                    for(var iTD=0;iTD<this.ACROSS;iTD++){
                        TD[iTR][iTD] = new Element('td').setStyle({fontSize:"9px", padding:"0 3px 2px 6px", border:"1px outset #555",  minHeight:"80px"});
                        P[iTR][iTD]  = []; P_CONTENT[iTR][iTD] = [];  // INIT                
                        for(var iP=0;iP<5;iP++){
                            P[iTR][iTD][iP]         = new Element("p");
                            P_CONTENT[iTR][iTD][iP] = [];             // INIT   
                            
                            if(iP==0){
                                // WIDTH
                                P_CONTENT[iTR][iTD][iP][0] = index + "&nbsp;";
                                P_CONTENT[iTR][iTD][iP][1] = new Element("span").setStyle({paddingLeft:"11px"}).update("WIDTH");
                                //----------
                                P[iTR][iTD][iP].setStyle({paddingLeft:"5px"});
                            }
                            else if(iP==1){
                                // WIDTH - INPUT
                                P_CONTENT[iTR][iTD][iP][0] = new Element("input", {"type":"checkbox", "id":"mwpp-size-"+index, value: index}).setStyle({width: "20px"}).addClassName("mwpp-size");
                                Event.observe(P_CONTENT[iTR][iTD][iP][0], 'click', function(e){
                                    GLOBAL.CURRENT.IMAGE = this.element.value;
                                }.bindAsEventListener({element: P_CONTENT[iTR][iTD][iP][0] }));
                                P_CONTENT[iTR][iTD][iP][1] = "&nbsp;";
                    
                                if(XWIZ.FRONT.SETUP.LAYOUT.LAYOUT.count_image.value==1 && index==1)
                                    var width  = this.minWidth;
                                else
                                    var width  = XWIZ.FRONT.SETUP.IMAGE[index].width.value>0?XWIZ.FRONT.SETUP.IMAGE[index].width.value:this.minWidth;
                                P_CONTENT[iTR][iTD][iP][2] = new Element("input", {"type":"text",  "id":"mwpp-size-width-"+index, value: width}).setStyle({width: _width+"px", height: "13px"});
                                //----------
                            }
                            else if(iP==2){
                                // HEIGHT
                                P_CONTENT[iTR][iTD][iP][0]  = new Element("span").update("HEIGHT");
                                //----------
                                P[iTR][iTD][iP].setStyle({paddingLeft:"25px"});
                            }
                            else if(iP==3){
                                // HEIGHT - INPUT
                                P_CONTENT[iTR][iTD][iP][0]  = "&nbsp;";
                                if(XWIZ.FRONT.SETUP.LAYOUT.LAYOUT.count_image.value==1 && index==1)
                                    var height  = this.minHeight;
                                else
                                    var height  = XWIZ.FRONT.SETUP.IMAGE[index].height.value>0?XWIZ.FRONT.SETUP.IMAGE[index].height.value:this.minHeight;
                                P_CONTENT[iTR][iTD][iP][1]  = new Element("input", {"type":"text",  "id":"mwpp-size-height-"+index, value: height}).setStyle({width: _width+"px", height:"13px"});
                                //----------
                                P[iTR][iTD][iP].setStyle({paddingLeft:"20px"});
                            }
                            else if(iP==4){
                                var shape = XWIZ.FRONT.SETUP.IMAGE[index].shape.value>0?"OVAL":"RECTANGLE";
                                P_CONTENT[iTR][iTD][iP][0]  = new Element("input", {"type":"button",  "id":"mwpp-size-shape-"+index, value: shape}).setStyle({border:"2px outset  #888", width: "100%", height:"17px", fontSize:"9px", verticalAlign: "top"}).addClassName("mwpp-size-shape");
                                Event.observe(P_CONTENT[iTR][iTD][iP][0], 'click', function(e){
                                    this._this.handlerShape(this.index, this.element);
                                }.bindAsEventListener({_this: this, index: index, element: P_CONTENT[iTR][iTD][iP][0]}));
                                //----------
                            }
                            //----------
                            for(var iPC=0;iPC<P_CONTENT[iTR][iTD][iP].size();iPC++){
                                P[iTR][iTD][iP].insert({"bottom": P_CONTENT[iTR][iTD][iP][iPC] });
                            }
                            TD[iTR][iTD].insert({"bottom": P[iTR][iTD][iP] });
                        }
                        TR[iTR].insert({"bottom": TD[iTR][iTD] });
                        index++;
                    }
                    TBODY.insert({"bottom": TR[iTR] });
                }
                TABLE.insert({'bottom':TBODY});
                $("mwpp-td-right").setStyle({width: "105px"});
            }
            else{
                TABLE = "&nbsp;";
                $("mwpp-td-right").setStyle({width: "420px"});
            }
            $("mwpp-td-left").update();
            $("mwpp-td-left").insert({"bottom": TABLE });
        },
        prepareProject: function()
        {
            var GAP   = 0;
            var TOTAL = 0, TOTAL_WIDTH = 0, TOTAL_HEIGHT = 0, DEPTH = 0;
            var COL = [0,0,0,0,0], ROW = [0,0,0,0,0];
            //--//

            // DEPTH
            if(XWIZ.FRONT.EXE.CFRAME[0].id>0 || XWIZ.FRONT.EXE.FRAME[0].id>0)
                var OVER_MOULDING   = Number(XWIZ.FRONT.EXE.LAYOUT[0].moulding_overlap);
            else
                var OVER_MOULDING   = 0;
            if(XWIZ.FRONT.EXE.TOPMAT[0].id>0 || XWIZ.FRONT.EXE.MIDDLEMAT[0].id>0 || XWIZ.FRONT.EXE.BOTTOMMAT[0].id>0)
                var OVER_MAT        = Number(XWIZ.FRONT.EXE.LAYOUT[0].mat_overlap);
            else
                var OVER_MAT        = 0;

            if(XWIZ.FRONT.EXE.CFRAME[0].id>0 && XWIZ.FRONT.EXE.CFRAME[0].depth)
                var CFRAME_DEPTH    = Number(XWIZ.FRONT.EXE.CFRAME[0].depth);
            else
                var CFRAME_DEPTH    = 0;
            if(XWIZ.FRONT.EXE.FRAME[0].id>0 && XWIZ.FRONT.EXE.FRAME[0].depth)
                var FRAME_DEPTH     = Number(XWIZ.FRONT.EXE.FRAME[0].depth);
            else
                var FRAME_DEPTH     = 0;
            if(XWIZ.FRONT.EXE.LINER[0].id>0 && XWIZ.FRONT.EXE.LINER[0].depth)
                var LINER_DEPTH     = Number(XWIZ.FRONT.EXE.LINER[0].depth);
            else
                var LINER_DEPTH     = 0;

            if(XWIZ.FRONT.EXE.BOTTOMMAT[0].id>0 && XWIZ.FRONT.EXE.BOTTOMMAT[0].depth)
                var BOTTOMMAT_DEPTH = Number(XWIZ.FRONT.EXE.BOTTOMMAT[0].depth);
            else
                var BOTTOMMAT_DEPTH = 0;
                
            if(XWIZ.FRONT.EXE.MIDDLEMAT[0].id>0 && XWIZ.FRONT.EXE.MIDDLEMAT[0].depth)
                var MIDDLEMAT_DEPTH = Number(XWIZ.FRONT.EXE.MIDDLEMAT[0].depth);
            else
                var MIDDLEMAT_DEPTH = 0;

            if(XWIZ.FRONT.EXE.TOPMAT[0].id>0){
                if(XWIZ.FRONT.EXE.TOPMAT[0].depth>0 && XWIZ.FRONT.SETUP.LAYOUT.LAYOUT.count_image.value==1){
                    if((this.ACROSS*this.DOWN)>1){
                        this.TOPMAT_DEPTH = this.TOPMAT_DEPTH;
                    }
                    else{
                        this.TOPMAT_DEPTH = Number(XWIZ.FRONT.EXE.TOPMAT[0].depth);
                    }
                }
                else{
                    if(this.SETUP.mwpp_topmat_fixed>0){
                        this.TOPMAT_DEPTH    = Number(eval("this.SETUP.mwpp_topmat_value_fix_"+ MEASUREMENT.measure_unit));
                    }
                    else{
                        if(this.TOPMAT_DEPTH<Number(eval("this.SETUP.mwpp_topmat_value_min_"+ MEASUREMENT.measure_unit)))
                            this.TOPMAT_DEPTH = Number(eval("this.SETUP.mwpp_topmat_value_min_"+ MEASUREMENT.measure_unit));
                    }   
                }
            }
            else
                this.TOPMAT_DEPTH   = Number(eval("this.SETUP.mwpp_topmat_value_default_"+ MEASUREMENT.measure_unit));
            var TOPMAT_DEPTH    = this.TOPMAT_DEPTH;
            //----

            // WIDTH 'n HEIGHT
            var COUNT_IMAGE = Number(this.ACROSS)*Number(this.DOWN);   
            var KEYS_IMAGE  = Object.keys(XWIZ.FRONT.SETUP.IMAGE); 
            for(var i=0;i<KEYS_IMAGE.size();i++){
                XWIZ.FRONT.SETUP.IMAGE[KEYS_IMAGE[i]].top.value    = 0;
                XWIZ.FRONT.SETUP.IMAGE[KEYS_IMAGE[i]].right.value  = 0;
                XWIZ.FRONT.SETUP.IMAGE[KEYS_IMAGE[i]].bottom.value = 0;
                XWIZ.FRONT.SETUP.IMAGE[KEYS_IMAGE[i]].left.value   = 0;
            }
            for(var i=0;i<KEYS_IMAGE.size();i++){
                if(i<COUNT_IMAGE){
                    if(XWIZ.FRONT.SETUP.LAYOUT.LAYOUT.count_image.value==1 && i==0){
                        XWIZ.FRONT.SETUP.IMAGE[KEYS_IMAGE[i]].width.value  = this.minWidth;
                        XWIZ.FRONT.SETUP.IMAGE[KEYS_IMAGE[i]].height.value = this.minHeight;
                    }
                    else{
                        XWIZ.FRONT.SETUP.IMAGE[KEYS_IMAGE[i]].width.value  = XWIZ.FRONT.SETUP.IMAGE[KEYS_IMAGE[i]].width.value>0?XWIZ.FRONT.SETUP.IMAGE[KEYS_IMAGE[i]].width.value:this.minWidth;
                        XWIZ.FRONT.SETUP.IMAGE[KEYS_IMAGE[i]].height.value = XWIZ.FRONT.SETUP.IMAGE[KEYS_IMAGE[i]].height.value>0?XWIZ.FRONT.SETUP.IMAGE[KEYS_IMAGE[i]].height.value:this.minHeight;            
                    }
                }
                else{
                    XWIZ.FRONT.SETUP.IMAGE[KEYS_IMAGE[i]].width.value  = 0; XWIZ.FRONT.SETUP.IMAGE[KEYS_IMAGE[i]].height.value  = 0;
                }
            }
            XWIZ.FRONT.SETUP.LAYOUT.LAYOUT.count_image.value = COUNT_IMAGE;
            
            // GAP
            if(COUNT_IMAGE>1)
                if(this.SETUP.mwpp_gap_fixed>0)
                    GAP = Number(eval("this.SETUP.mwpp_gap_value_fix_"+ MEASUREMENT.measure_unit));
                else
                    GAP = Number(TOPMAT_DEPTH*this.SETUP.mwpp_gap_value_percent/100);
            else
                GAP = 0;

            // Search the LARGEST PICTURE in the column
                var TEMP = [];
            for(var k=1;k<=this.ACROSS;k++){
                for(var i=1;i<=this.DOWN;i++){
                    TEMP[i] = XWIZ.FRONT.SETUP.IMAGE[this.getImageIndex(i,k)].width.value;
                }
                COL[k]       = Number(max(TEMP));
                COL[k]      += 2*(MIDDLEMAT_DEPTH+BOTTOMMAT_DEPTH-OVER_MAT)+GAP;
                TOTAL_WIDTH += COL[k];
            }
            // Search the LARGEST PICTURE in the row
                var TEMP = [];
            for(var i=1;i<=this.DOWN;i++){
                for(var k=1;k<=this.ACROSS;k++){
                    TEMP[k] = XWIZ.FRONT.SETUP.IMAGE[this.getImageIndex(i,k)].height.value;
                }
                ROW[i]        = Number(max(TEMP));
                ROW[i]       += 2*(MIDDLEMAT_DEPTH+BOTTOMMAT_DEPTH-OVER_MAT)+GAP;
                TOTAL_HEIGHT += ROW[i];
            }
            // Search the CENTER
            var TEMP   = CFRAME_DEPTH+FRAME_DEPTH+LINER_DEPTH+TOPMAT_DEPTH-OVER_MOULDING-GAP/2;
            var CENTER = []; var C = []; var R = [];
            for(var _row=1;_row<=this.DOWN;_row++){
                CENTER[_row] = [];
                if(_row==1)
                    R[_row] = TEMP + ROW[_row]/2;
                else
                    R[_row] = R[_row-1] + ROW[_row-1]/2+ROW[_row]/2;

                for(var _col=1;_col<=this.ACROSS;_col++){
                    CENTER[_row][_col]    = [];
                    if(_col==1)
                        CENTER[_row][_col][0] = TEMP + COL[_col]/2;
                    else
                        CENTER[_row][_col][0] = CENTER[_row][_col-1][0] + COL[_col-1]/2+COL[_col]/2;
                    
                    CENTER[_row][_col][1] = R[_row];
                }

            }
            // WIDTH 'n HEIGHT PROJECT
            TOTAL_WIDTH  += 2*(CFRAME_DEPTH+FRAME_DEPTH+LINER_DEPTH+TOPMAT_DEPTH-OVER_MOULDING);
            TOTAL_HEIGHT += 2*(CFRAME_DEPTH+FRAME_DEPTH+LINER_DEPTH+TOPMAT_DEPTH-OVER_MOULDING);

            var index = 1; var _COL = 0, _ROW = 0;
            for(var _row=1;_row<=this.DOWN;_row++){
                for(var _col=1;_col<=this.ACROSS;_col++){
                    XWIZ.FRONT.SETUP.IMAGE[this.getImageIndex(_row,_col)].left.value  = Math.xwiz_round(Number(CENTER[_row][_col][0])-Number(XWIZ.FRONT.SETUP.IMAGE[this.getImageIndex(_row,_col)].width.value/2)-CFRAME_DEPTH-FRAME_DEPTH-MIDDLEMAT_DEPTH-BOTTOMMAT_DEPTH+OVER_MOULDING+OVER_MAT, GLOBAL.precision);
                    XWIZ.FRONT.SETUP.IMAGE[this.getImageIndex(_row,_col)].right.value = Math.xwiz_round(TOTAL_WIDTH-Number(CENTER[_row][_col][0])-Number(XWIZ.FRONT.SETUP.IMAGE[this.getImageIndex(_row,_col)].width.value/2)-CFRAME_DEPTH-FRAME_DEPTH-MIDDLEMAT_DEPTH-BOTTOMMAT_DEPTH+OVER_MOULDING+OVER_MAT-GAP, GLOBAL.precision);
                
                    XWIZ.FRONT.SETUP.IMAGE[this.getImageIndex(_row,_col)].top.value    = Math.xwiz_round(Number(CENTER[_row][_col][1])-Number(XWIZ.FRONT.SETUP.IMAGE[this.getImageIndex(_row,_col)].height.value/2)-CFRAME_DEPTH-FRAME_DEPTH-MIDDLEMAT_DEPTH-BOTTOMMAT_DEPTH+OVER_MOULDING+OVER_MAT, GLOBAL.precision);
                    XWIZ.FRONT.SETUP.IMAGE[this.getImageIndex(_row,_col)].bottom.value = Math.xwiz_round(TOTAL_HEIGHT-Number(CENTER[_row][_col][1])-Number(XWIZ.FRONT.SETUP.IMAGE[this.getImageIndex(_row,_col)].height.value/2)-CFRAME_DEPTH-FRAME_DEPTH-MIDDLEMAT_DEPTH-BOTTOMMAT_DEPTH+OVER_MOULDING+OVER_MAT-GAP, GLOBAL.precision);
                }
            } 
           this.draw_project();
        },
        getImageIndex: function(row, col)
        {
            if(row>this.DOWN || col>this.ACROSS)
                return false;
            return row*this.ACROSS-this.ACROSS+col;
        },
        resizeMat: function(type,grow,step)
        {
            if(this.SETUP.mwpp_topmat_fixed>0)
                return this.TOPMAT_DEPTH;
                                                   
            if(grow)
                this.TOPMAT_DEPTH=Number(this.TOPMAT_DEPTH)+Number(step);
            else
                this.TOPMAT_DEPTH=Number(this.TOPMAT_DEPTH)-Number(step);
            if(this.TOPMAT_DEPTH<Number(eval("this.SETUP.mwpp_topmat_value_min_"+ MEASUREMENT.measure_unit)))
                this.TOPMAT_DEPTH = Number(eval("this.SETUP.mwpp_topmat_value_min_"+ MEASUREMENT.measure_unit)); 
            return this.TOPMAT_DEPTH;
        },
        draw_project:function()
        {
            XWIZ.FRONT.draw_project();
        }
    });