refactored ringSetting and windowSetting