migrated to Qt5