здравствуйте.
На форме есть QPlainTextEdit. Нужно сравнить текст в нем до- и после- изменения. Пытаюсь отследить получение и потерю виджетом фокуса. 
В .h
class FocusFilter:public QObject
{
    public:
        FocusFilter(QObject* pobj=0);
    protected:
        virtual bool eventFilter(QObject*,QEvent*);
};
В .cpp
ui->TEOpis->installEventFilter(new FocusFilter(ui->TEOpis));
  и
FocusFilter::FocusFilter(QObject *pobj):QObject(pobj)
{
}
bool FocusFilter::eventFilter(QObject * obj, QEvent *ev)
{
    QString tmp_opis;
    if(obj->objectName()=="TEOpis")
    {
        if(((QFocusEvent*)ev)->type()==QEvent::FocusIn)
            tmp_opis=((QPlainTextEdit*)obj)->toPlainText();
        else if(ev->type()==QEvent::FocusOut)
        {
            if(tmp_opis!=((QPlainTextEdit*)obj)->toPlainText()) //текст был изменен
                tmp_opis=((QPlainTextEdit*)obj)->toPlainText();
        }
        return true;
    }
    return false;
}
Все работает, только вот QPlainTextEdit на форме выглядит, как совсем маленький QLineEdit, и накакие фиксированные размеры и установка минимальных размеров не помогают. Что я сделал не так?