is "locale" a system locale? if so, why not call this method SetSystemLocale?