2) Вот пример.
Но поскольку Layouts в QT всегда криво работали, то до конца правильно сделать можно только если их переписать.
Наблюдается небольшое увеличение левой панели(QT баг). Причина ошибки становиться понятной при включеном "Fixed"
Вот сделал затычку, но заметьте это извращение:
C++ (Qt)
void MainWindow::onMoreClicked()
{ ...
...
resize(0, height());
QApplication::processEvents();
resize(0, height());
...
...
}