Split ui file by promoting widgets and compile ui files at runtime.