gridbaglayout improved fix