Updated some methods and added swing interface