One problem that I am getting is , the font is always set to Helvetica and size as 9.
That happens when you close and restart the application, right? The "old font" is the default font, in this case probably Helvetica,9. If you restart the application the default font will be used. Use a configuration file to save the desired font and apply it at the application start.
The same for the HList, if you destroy and recreate it you have to reapply the desired font.