Add tab support and split ui file