public PacketConverterInstance CreateInstance(Guid class_id, Guid obj_id, PacketConverterProperty pcvtp) { /* IDからクラスを検索 */ var viewd = FindClass(class_id); if (viewd == null) { return(null); } /* インスタンス作成 */ var viewi = viewd.CreateInstance(this, obj_id, pcvtp); if (viewi == null) { return(null); } /* インスタンス登録 */ lock (pcvti_list_) { pcvti_list_.Add(viewi); } UpdateConvertStatus(); return(viewi); }
public PacketConverterInstance(PacketConvertManager pcvtm, PacketConverterClass pcvtd, PacketConverterProperty pcvtp, Guid id) { InitializeComponent(); pcvtm_ = pcvtm; Class = pcvtd; Property = pcvtp; ID = id; UpdateFilter(); }
public PacketConverterInstance CreateInstance(string class_id, Guid obj_id, PacketConverterProperty pcvtp) { var id = Guid.Empty; if (!Guid.TryParse(class_id, out id)) { return(null); } return(CreateInstance(id, obj_id, pcvtp)); }
protected virtual PacketConverterInstance OnCreateInstance(PacketConvertManager pcvtm, Guid obj_id, PacketConverterProperty pcvtp) { return(null); }
public PacketConverterInstance CreateInstance(PacketConvertManager pcvtm, Guid obj_id, PacketConverterProperty pcvtp) { /* プロパティがnullのときはデフォルト値で新規作成 */ if (pcvtp == null) { pcvtp = CreateProperty(); } /* プロパティタイプが異なるときは失敗 */ if (pcvtp.GetType() != GetPropertyType()) { return(null); } return(OnCreateInstance(pcvtm, obj_id, pcvtp)); }