further removing reliance on QT library