added class to unify the different gui classes and avoid ordering problems, this only puspose the refactor