Panel based UI framework