Gtk IconView выбрать несколько без Ctrl? - PullRequest
2 голосов
/ 08 ноября 2010

Можно ли заставить Gtk IconView (в pygtk) разрешать выбор нескольких иконок без нажатия клавиши Ctrl ?

Я хочу, чтобы поведение Ctrl удерживалось, даже если оно не удерживается.

1 Ответ

2 голосов
/ 08 ноября 2010

Отмена такого поведения может запутать пользователей.Но если вы действительно хотите, я вижу две возможности:

Либо заставить IconView верить Ctrl всегда нажимать:

def force_ctrl(iv, ev): ev.state |= gtk.gdk.CONTROL_MASK
iconview.connect('key-press-event', force_ctrl)
iconview.connect('button-press-event', force_ctrl)

ИлиВы можете попробовать реализовать поведение выбора самостоятельно, что-то вроде:

def clicked(iv, ev):
    p = iv.get_path_at_pos(int(ev.x), int(ev.y))
    if not p is None:
        if iv.path_is_selected(p):
            iv.unselect_path(p)
        else:
            iv.select_path(p)
    return True # make the IconView ignore this click
iconview.connect('button-press-event', clicked)
...