LINUX.ORG.RU

GTK2 и SimpleList


0

0

Пишу на perl используя gtk2. Создал SimpleList, загрузил в него список. Перемещаясь по списку с помощью стрелок на клавиатуре курсор таскает за собой выделение. Т.е. строка на которой курсор всегда синим выделена. Вопрос в том как от этого избавиться. Чтоб только курсор бегал, без выделения. Никак чего-то не пойму.

А какой виджет-то используется (в документации по C GTK API 2.10.11 не нашел GtkSimpleList)?

Deleted
()
Ответ на: комментарий от Deleted

используется TreeView. интерфейс создается в glade.
кусок кода где этот SimpleList вылезает:

my $widget1 = $glade->get_widget('list');
$list = Gtk2::SimpleList->new_from_treeview(
    $widget1,
    'Колонка1' => 'text',
    'Колонка2' => 'text',
    'Колонка3' => 'text',
);
$list->get_selection->set_mode('multiple');
foreach ($list->get_columns()) {
    $_->set_resizable(1);
    $_->set_sizing('autosize');
}

pa23
() автор топика
Ответ на: комментарий от pa23

1) Использовать GTK_SELECTION_NONE?
Сам не пробовал, поэтому точно не уверен.

2) Использовать GTK_SELECTION_SINGLE и ловить сигнал перемещения выделения. После каждого перемещения делать gtk_tree_selection_unselect_path или нечто подобное.

Секрет в том, что если снять выделение, то
ячейка всё равно будет активироваться по нажатию Enter

ttnl ★★★★★
()
Ответ на: комментарий от ttnl

заменил в

$list->get_selection->set_mode('multiple');

'multiple' на 'none' и добился чего хотел. большое спасибо за наводку. мог бы конечно и сам сообразить... спасибо

pa23
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.