private void SetKeyboardAdaptors(IKeyboardRetrievingAdaptor[] adaptors) { _keyboards.Clear(); foreach (IKeyboardRetrievingAdaptor adaptor in _adaptors.Values) { adaptor.Dispose(); } _adaptors.Clear(); foreach (IKeyboardRetrievingAdaptor adaptor in adaptors) { if (adaptor.IsApplicable) { if ((adaptor.Type & KeyboardAdaptorType.System) == KeyboardAdaptorType.System) { _adaptors[KeyboardAdaptorType.System] = adaptor; } if ((adaptor.Type & KeyboardAdaptorType.OtherIm) == KeyboardAdaptorType.OtherIm) { _adaptors[KeyboardAdaptorType.OtherIm] = adaptor; } } } foreach (IKeyboardRetrievingAdaptor adaptor in adaptors) { if (!_adaptors.ContainsValue(adaptor)) { adaptor.Dispose(); } } // Now that we know who can deal with the keyboards we can retrieve all available // keyboards, as well as add the used keyboard adaptors as error report property. var bldr = new StringBuilder(); foreach (IKeyboardRetrievingAdaptor adaptor in _adaptors.Values) { adaptor.Initialize(); if (bldr.Length > 0) { bldr.Append(", "); } bldr.Append(adaptor.GetType().Name); } ErrorReport.AddProperty("KeyboardAdaptors", bldr.ToString()); Logger.WriteEvent("Keyboard adaptors in use: {0}", bldr.ToString()); }
public void Clear() { lock (GSList) GSList.Clear(); }
public void ClearEventFiresOnClear() { _keyedList.Clear(); Assert.AreEqual(0, _items); }