Одна из частей моей программы представляет собой небольшой файловый броузер, в общем это просто небольшое окно со списком файлов\каталогов. Можно выделенной строкой «двигаться» по списку, входить в другие папки. Если список не помещается в окно, появляется вертикальная прокрутка, размер окна не меняется. Программа запоминает последний выделенный файл и при запуске ставит выделение сразу на него. Это все работает. Проблема вот в чем: Если выделенная строка была внизу достаточно длинного списка и произошел выход из программы, то при следующем запуске видно только начало списка, а область с выделением не видно, т.к. она где-то внизу, хоть и в фокусе. Чтобы она появилась, достаточно хоть раз нажать стрелку «вверх» или «вниз». Как сдвинуть область с выделением в окно сразу(программно)?
Я в курсе, как прокручивать регуляторы с помощью GtkAdjustment, но это слишком уж мудрено; - список переменной длины и позиция выделенной строки тоже произвольная. Пытался иммитировать всякие сигналы, перебрал, пожалуй все для использованных в окне виджетов... не помогло. Как симмитировать нажатия «вверх» или «вниз» не нашел, но это уже и так костыли. Может есть какая-то функция в GTK ? Просматривал разделы: GtkScrolledWindow GtkTreeView GtkWindow GtkTreeModel GtkTreeSelection GtkTreeViewColumn но не смог подобрать что-то.