/// <summary>
 /// Called when property changed.
 /// </summary>
 /// <param name="sender">The sender.</param>
 /// <param name="e">The <see cref="PropertyChangedEventArgs"/> instance containing the event data.</param>
 private void OnPropertyChanged(object sender, PropertyChangedEventArgs e)
 {
     var category = e.GetCategory<Category>();
     if (category != Category.None)
         UpdatePreferences();
     switch (category)
     {
         case Category.ProxyTunnel:
             CheckProxyTunnel();
             break;
         case Category.ProxyServer:
             SetupProxyServer();
             break;
         case Category.ProxyKeepalive:
             break;
     }
 }