public override object ConvertFrom( ITypeDescriptorContext typeDescriptorContext,
            CultureInfo cultureInfo, object value)
        {
            KeyModifierCollection result = new KeyModifierCollection();
              string stringValue = value as string;

              // convert null as None
              if( value == null
              || ( stringValue != null && stringValue.Trim() == string.Empty ) )
              {
            result.Add( KeyModifier.None );
              }
              else
              {
            // respect the following separators: '+', ' ', '|', or ','
            foreach( string token in stringValue.Split( new char[] { '+', ' ', '|', ',' },
                StringSplitOptions.RemoveEmptyEntries ) )
              result.Add( ( KeyModifier )_keyModifierConverter.ConvertFrom( typeDescriptorContext, cultureInfo, token ) );

            // if nothing added, assume None
            if( result.Count == 0 )
              result.Add( KeyModifier.None );
              }
              return result;
        }
Example #2
0
 private static KeyModifierCollection GetDefaultRelativeZoomModifiers()
 {
   KeyModifierCollection result = new KeyModifierCollection();
   result.Add( KeyModifier.Ctrl );
   result.Add( KeyModifier.Alt );
   result.Add( KeyModifier.Exact );
   return result;
 }
Example #3
0
 private static KeyModifierCollection GetDefaultZoomToSelectionModifiers()
 {
   KeyModifierCollection result = new KeyModifierCollection();
   result.Add( KeyModifier.Alt );
   result.Add( KeyModifier.Exact );
   return result;
 }