Exemple #1
0
        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;
                    }
                }
            }
        }
Exemple #2
0
    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));
    }
Exemple #3
0
    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);
    }
Exemple #4
0
    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);
            }
        }
    }
Exemple #5
0
    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);
    }
Exemple #6
0
    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;
    }
Exemple #7
0
        /// <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;
        }