MethodBodyOptions CopyTo(MethodBodyOptions options) { NativeMethodBodyVM.CopyTo(options.NativeMethodBodyOptions); CilBodyVM.CopyTo(options.CilBodyOptions); options.BodyType = (MethodBodyType)MethodBodyTypeVM.SelectedItem; options.CodeType = (MethodImplAttributes)(Method.CodeType)CodeTypeVM.SelectedItem; return(options); }
void InitializeFrom(MethodBodyOptions options) { NativeMethodBodyVM.InitializeFrom(options.NativeMethodBodyOptions); CilBodyVM.InitializeFrom(options.CilBodyOptions); MethodBodyTypeVM.SelectedItem = options.BodyType; // Initialize this last since it gets updated when body type gets changed CodeTypeVM.SelectedItem = (Method.CodeType)options.CodeType; }
public MethodBodyVM(MethodBodyOptions options, ModuleDef ownerModule, Language language, TypeDef ownerType, MethodDef ownerMethod) { this.origOptions = options; this.nativeMethodBodyVM = new MethodBody.NativeMethodBodyVM(options.NativeMethodBodyOptions); NativeMethodBodyVM.PropertyChanged += (s, e) => HasErrorUpdated(); this.cilBodyVM = new MethodBody.CilBodyVM(options.CilBodyOptions, ownerModule, language, ownerType, ownerMethod); CilBodyVM.PropertyChanged += (s, e) => HasErrorUpdated(); this.methodBodyTypeVM = new EnumListVM(methodBodyTypeList, (a, b) => OnMethodBodyTypeChanged()); Reinitialize(); }