/// <summary> /// Deserializes a PaletteGroupView object from the code DOM. /// </summary> /// <param name="manager"></param> /// <param name="codeObject"></param> /// <returns></returns> public override object Deserialize(IDesignerSerializationManager manager, object codeObject) { object retVal = null; // Get base class serializer CodeDomSerializer baseSerializer = (CodeDomSerializer)manager.GetSerializer(typeof(GroupView), typeof(CodeDomSerializer)); if (baseSerializer != null) { // Deserialize palette group view using base class serializer retVal = baseSerializer.Deserialize(manager, codeObject); if (retVal != null) { // Downcast to PaletteGroupView PaletteGroupView palGrpVw = retVal as PaletteGroupView; if (palGrpVw != null) { // Load symbol palette from the resource file and attach // to the palette group view string resName = palGrpVw.Name + "." + "Palette"; System.ComponentModel.Design.IResourceService resSvc = manager.GetService(typeof(System.ComponentModel.Design.IResourceService)) as System.ComponentModel.Design.IResourceService; if (resSvc != null) { System.Resources.IResourceReader resReader = resSvc.GetResourceReader(System.Globalization.CultureInfo.InvariantCulture); if (resReader != null) { // Iterate through the resource file using the resource // reader and find the byte stream for the palette byte[] strmData = null; bool resFound = false; IDictionaryEnumerator resEnum = resReader.GetEnumerator(); while (resEnum.MoveNext() && !resFound) { if ((string)resEnum.Key == resName) { strmData = (byte[])resEnum.Value; resFound = true; } } if (resFound && strmData != null) { palGrpVw.LoadPalette(strmData); } } } } } } return(retVal); }
public ResourceSet(System.Resources.IResourceReader reader) { }