VirtualMethod AddVM(XmlElement vm_elem, bool is_signal_vm, bool is_interface) { VirtualMethod vm; if (is_signal_vm) { vm = new DefaultSignalHandler(vm_elem, this); } else if (is_interface) { string target_name = vm_elem.HasAttribute("target_method") ? vm_elem.GetAttribute("target_method") : vm_elem.GetAttribute("name"); vm = new InterfaceVM(vm_elem, GetMethod(target_name), this); } else { vm = new GObjectVM(vm_elem, this); } if (vm_elem.GetAttributeAsBoolean("padding") || vm_elem.GetAttributeAsBoolean("hidden")) { hidden_vms.Add(vm); } else { if (vm is GObjectVM) { virtual_methods.Add((GObjectVM)vm); } else { interface_vms.Add((InterfaceVM)vm); } } if (vm.CName != "") { class_members.Add(vm); } return(vm); }
VirtualMethod AddVM(XmlElement vm_elem, bool is_signal_vm, bool is_interface) { VirtualMethod vm; if (is_signal_vm) { vm = new DefaultSignalHandler(vm_elem, this); } else if (is_interface) { vm = new InterfaceVM(vm_elem, methods [vm_elem.GetAttribute("name")] as Method, this); } else { vm = new GObjectVM(vm_elem, this); } if (vm_elem.GetAttribute("padding") == "true" || vm_elem.GetAttribute("hidden") == "1") { hidden_vms.Add(vm); } else { if (vm is GObjectVM) { virtual_methods.Add(vm); } else { interface_vms.Add(vm); } } if (vm.CName != "") { class_members.Add(vm); } return(vm); }
VirtualMethod AddVM(XmlElement vm_elem, bool is_signal_vm, bool is_interface) { VirtualMethod vm; if (is_signal_vm) vm = new DefaultSignalHandler (vm_elem, this); else if (is_interface) { string target_name = vm_elem.HasAttribute ("target_method") ? vm_elem.GetAttribute ("target_method") : vm_elem.GetAttribute ("name"); vm = new InterfaceVM (vm_elem, methods [target_name] as Method, this); } else vm = new GObjectVM (vm_elem, this); if (vm_elem.GetAttribute ("padding") == "true" || vm_elem.GetAttribute ("hidden") == "1") hidden_vms.Add (vm); else { if (vm is GObjectVM) virtual_methods.Add (vm); else interface_vms.Add (vm); } if (vm.CName != "") class_members.Add (vm); return vm; }