bayguiのEventにはまる

e->getSource()がおかしいなぁ。
作法を間違えたか?

追記

最小再現コード

class Sample : public Frame {
private:
    Button* button_;
    Label* label_;
public:
    Sample()
    {
        setBounds(50, 50, 200, 200);
        button_ = new Button("test");
        button_->setBounds(100, 100, 24, 24);
        setTitle("Sample");
        add(button_);
        label_ = new Label("");
        label_->setBounds(10, 30, 150, 40);
        add(label_);
    }

    ~Sample()
    {
        delete label_;
        delete button_;
    }

    void processEvent(Event *event)
    {
        if (event->getType() == MouseEvent::MOUSE_PRESSED)
        {
            char buf[64];
            sprintf(buf, "source=%x\n", event->getSource());
            label_->setText(buf);
        }
    }
};


int MonaMain(List<char*>* pekoe)
{
    Sample* sample = new Sample;
    sample->run();
    delete sample;
    return 0;
}

event source をラベルに表示するコードですが、一度ボタンを押した後にボタン外を押してもボタンと同じsourceの event が来る場合がある。