Mouselisteners in classes

Im new at OOP, and just learning to program classes. However i am wondering whats wrong with this…


class MouseListener
    {
    private var thisMouse;
    private var lastMouse;
    private var theListener;
    
    public function MouseListener()
        {
        this.theListener = new Object();
        Mouse.addListener(this.theListener);
        }
    public function getMouse():String
        {
        this.theListener.onMouseDown = function ()
            {
            this.thisMouse = "down";
            this.lastMouse = "down";
            }            
        _root.onMouseUp = function ()
            {
            thisMouse = "up";
            this.lastMouse = "up";
            }
        _root.onMouseMove = function ()
            {
            this.thisMouse = "move";
            }
        trace (this.thisMouse);
        return thisMouse;
        }
        
    public function getLastMouse():String
        {
        return this.lastMouse;
        }
    }

Why would this trace undefined? Its probably just a newb mistake, but id like some help with finding it.

thx