code is stolen from Qt, slightly adapted to avoid a container copy. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23547 a592a061-630c-0410-9148-cb99ea01b6c8