예제 #1
0
 public GuiAction Add(GuiAction action)
 {
     action._list    = this;
     action._control = owner;
     Actions.Add(action);
     return(action);
 }
예제 #2
0
        public void Update(float dt)
        {
            IsUpdating = true;

            index = 0;
            int i = index;

            //int lanes = 0;

            while (i < Actions.Count)
            {
                GuiAction action = Actions[i];

                //if ((lanes & action.Lanes) == 0)
                //    continue;

                action.InternalUpdate(dt);

                //if (action.IsBlocking)
                //    lanes |= action.Lanes;

                if (action.IsFinished)
                {
                    // action->OnEnd();
                    Actions.Remove(action);
                }

                i++;
                index = i;

                if (action.IsBlocking)
                {
                    break;
                }
            }

            IsUpdating = false;
        }
예제 #3
0
 public void Remove(GuiAction action)
 {
     Actions.Remove(action);
 }
예제 #4
0
 public void InsertAfter(GuiAction action)
 {
     action._list    = this;
     action._control = owner;
     Actions.Insert(index + 1, action);
 }
예제 #5
0
 public void InsertBefore(GuiAction action)
 {
     action._list    = this;
     action._control = owner;
     Actions.Insert(index - 1, action);
 }