function my_dd_object(){

    var dd_objekt=null;
    // Position, an der das Objekt angeklickt wurde.
    var obj_pos_x = 0;
    var obj_pos_y = 0;

    // Mausposition
    var mouse_pos_x = 0;
    var mouse_pos_y = 0;

    this.dd_init=function(){
        
        if(this.id=='objektkarte'){
            //events nach mouseover werden initialisiert
            window.map_objects.onmousemove = window.my_dd.dd;
            window.map_objects.onmouseup = window.my_dd.dd_stop;
            window.map_objects.onmouseout = window.my_dd.dd_stop;
        }
        else if(this.id=='mini_fade'){
            //events nach mouseover werden initialisiert
            window.document.onmousemove = window.my_fade_dd.dd;
            window.document.onmouseup = window.my_fade_dd.dd_stop;
            window.map_objects.onmouseout = window.my_fade_dd.dd_stop;
            
            window.document.getElementById(this.id).onmouseout = window.my_fade_dd.dd_stop;
        }
        else if(this.id=='schieber'){
            //events nach mouseover werden initialisiert
            window.document.onmousemove = window.schieber_dd.dd;
            window.document.onmouseup = window.schieber_dd.dd_stop;
            //window.map_objects.onmouseover = null;

        }
    }

    this.dd_stop=function () {
    //Wird aufgerufen, wenn ein Objekt nicht mehr bewegt werden soll.

        window.no_drag=true;
        window.mapbuilder.validate_scope(window.map_main);
        if(dd_objekt && dd_objekt.id=='schieber'){
            window.my_regler_controller.check_position();
        }
        dd_objekt=null;
    }

    this.dd_start=function() {
        
        window.no_drag=false;
        
        //aufruf wenn große karte bewegt wird
        if(this.id=='objektkarte'){
            dd_objekt=window.map_objects;             

            
        }
        
        //aufruf wenn mini_fade bewegt wird
        else if(this.id=='mini_fade'){
            dd_objekt=document.getElementById('mini_fade');            

        }
        
        //aufruf wenn schieberegler bewegt wird
        else if(this.id=='schieber'){
            dd_objekt=document.getElementById('schieber');
        }

        obj_pos_x = mouse_pos_x - dd_objekt.offsetLeft;
        obj_pos_y = mouse_pos_y - dd_objekt.offsetTop;
    }

    this.dd=function(ereignis) {
    //Wird aufgerufen, wenn die Maus bewegt wird und bewegt bei Bedarf das Objekt.
        
        var newposx,newposy;
        if(document.all){
            mouse_pos_x=window.event.clientX;
            mouse_pos_y=window.event.clientY;
        }
        else{
            mouse_pos_x=ereignis.pageX;
            mouse_pos_y=ereignis.pageY;
        }
        if(dd_objekt != null) {
            newposx =   mouse_pos_x - obj_pos_x;
            newposy =   mouse_pos_y - obj_pos_y;

            //aufruf wenn große karte bewegt wird
            if(dd_objekt.id=='objektkarte'){
                //koordinaten setzen
                window.map_top=newposy;
                window.map_left=newposx;
                //koordinaten zuweisen
                window.map_coords.set_coords();

            }
            //aufruf wenn mini_fadebewegt wird
            else if(dd_objekt.id=='mini_fade'){
                //koordinaten umrechnen
                window.my_navi.change_coords(newposy,newposx);
                //koordinaten zuweisen
                window.map_coords.set_coords();

            }
            else if(dd_objekt.id=='schieber'){
                if(window.my_regler_controller.check_inner_position(newposy)){
                    document.getElementById('schieber').style.top=newposy+"px";
                }


            }

        }
    }
    
    this.get_mouse_x=function(){
        return mouse_pos_x;
    }
    this.get_mouse_y=function(){
        return mouse_pos_y;
    }

}