public override void Initial(FakeStruct mod, UIElement script) { base.Initial(mod, script); Main = script.transform; int c = Main.childCount; if (c > 0) { var it = Main.Find("Item").gameObject; HGUIManager.GameBuffer.RecycleGameObject(it); var sli = Main.Find("Slider"); if (sli != null) { var ui = sli.GetComponent <UIElement>(); Slider = ui.composite as UISlider; } ItemMod = HGUIManager.FindChild(mod, "Item"); unsafe { ItemSize = ((TransfromData *)ItemMod.ip)->size; var ex = mod.buffer.GetData(((TransfromData *)mod.ip)->ex) as FakeStruct; if (ex != null) { ScrollInfo *tp = (ScrollInfo *)ex.ip; scrollType = tp->scrollType; MinBox = tp->minBox; } } } }
public unsafe override FakeStruct ToFakeStruct(DataBuffer data) { FakeStruct fake = new FakeStruct(data, ScrollInfo.ElementSize); ScrollInfo *info = (ScrollInfo *)fake.ip; info->minBox = minBox; return(base.ToFakeStruct(data)); }
public unsafe override object ToBufferData(DataBuffer data) { FakeStruct fake = new FakeStruct(data, ScrollInfo.ElementSize); ScrollInfo *info = (ScrollInfo *)fake.ip; info->minBox = minBox; info->scrollType = scrollType; return(fake); }
public unsafe override void LoadFromBuffer(FakeStruct fake, Initializer initializer) { ScrollInfo *info = (ScrollInfo *)fake.ip; minBox = info->minBox; scrollType = info->scrollType; int id = info->Slider; if (id != 0) { if (initializer != null) { initializer.AddContextAction(ContextAction, id); } } }
public unsafe override void ToBufferData(DataBuffer db, UITransfromData *data) { FakeStruct fake = new FakeStruct(db, ScrollInfo.ElementSize); ScrollInfo *info = (ScrollInfo *)fake.ip; info->minBox = minBox; info->scrollType = scrollType; if (Slider != null) { info->Slider = Slider.GetInstanceID(); } else { info->Slider = 0; } data->composite = db.AddData(fake); }
public unsafe override void ToBufferData(DataBuffer db, huqiang.Core.UIData.UIElementData *data) { FakeStruct fake = new FakeStruct(db, ScrollInfo.ElementSize); ScrollInfo *info = (ScrollInfo *)fake.ip; info->minBox = minBox; info->scrollType = scrollType; if (Slider != null) { var ui = Slider.GetComponent <UIContext>(); if (ui != null) { info->Slider = ui.GetUIData().GetInstanceID(); } } else { info->Slider = 0; } int type = db.AddData("ScrollHelper"); int index = db.AddData(fake); data->composite = type << 16 | index; }
/// <summary> /// 设置项目模型 /// </summary> /// <param name="name">模型名称</param> public void SetItemMod(string name) { if (BufferData == null) { return; } var mod = HGUIManager.FindChild(BufferData, name); if (mod != null) { unsafe { ItemSize = ((UITransfromData *)mod.ip)->size; var ex = UITransfromLoader.GetCompositeData(mod); if (ex != null) { ScrollInfo *tp = (ScrollInfo *)ex.ip; scrollType = tp->scrollType; MinBox = tp->minBox; } } } ItemMod = mod; }