Initial QT5 based implementation