Переписал на С++. Взял этот класс. Хочу теперь, чтобы при клике по значке в трее главное окно пряталось, а при повторном - появлялось. Делаю приблизительно следующее:
.......
    tray_icon = new TrayIcon();
    tray_icon->setIcon(QPixmap::fromMimeSource("img/tray_active.png"));
    tray_icon->show();
    connect(tray_icon, SIGNAL(clicked(const QPoint&)), this, SLOT(S_hide()));
void uaixWall::S_hide()
{
    if(this->is_hide)
    {
        this->show();
    }
    else
    {
        this->hide();
    }
}
В переменной is_hide хранится текущий статус свёрнуто/нет. Так вот, при клике по значке ничего не происходит. Вот так тупо. Вешал эту же функцию на другое событие - прячется. Что я делаю не так?