mirror of
https://github.com/photonstorm/phaser
synced 2025-02-16 22:18:29 +00:00
Added SendToBack feature to the State Manager
This commit is contained in:
parent
dc90581c96
commit
8eccfc8b39
4 changed files with 68 additions and 45 deletions
|
@ -1,4 +1,4 @@
|
|||
var CHECKSUM = {
|
||||
build: '44a8b030-6642-11e7-88ff-5f0153810ec4'
|
||||
build: 'adba6db0-665c-11e7-bbcf-6f306cfc2eb0'
|
||||
};
|
||||
module.exports = CHECKSUM;
|
|
@ -52,38 +52,39 @@ var GlobalStateManager = new Class({
|
|||
}
|
||||
},
|
||||
|
||||
boot: Components.Boot,
|
||||
getKey: Components.GetKey,
|
||||
add: Components.Add,
|
||||
boot: Components.Boot,
|
||||
bootState: Components.BootState,
|
||||
bringToTop: Components.BringToTop,
|
||||
create: Components.Create,
|
||||
createStateDisplay: Components.CreateStateDisplay,
|
||||
createStateFromFunction: Components.CreateStateFromFunction,
|
||||
createStateFromInstance: Components.CreateStateFromInstance,
|
||||
createStateFromObject: Components.CreateStateFromObject,
|
||||
createStateFromFunction: Components.CreateStateFromFunction,
|
||||
setupCallbacks: Components.SetupCallbacks,
|
||||
createStateDisplay: Components.CreateStateDisplay,
|
||||
getActiveState: Components.GetActiveState,
|
||||
getActiveStateIndex: Components.GetActiveStateIndex,
|
||||
getActiveStateIndexByKey: Components.GetActiveStateIndexByKey,
|
||||
getKey: Components.GetKey,
|
||||
getState: Components.GetState,
|
||||
getStateAt: Components.GetStateAt,
|
||||
getStateIndex: Components.GetStateIndex,
|
||||
getStateIndexByKey: Components.GetStateIndexByKey,
|
||||
getActiveState: Components.GetActiveState,
|
||||
getActiveStateIndex: Components.GetActiveStateIndex,
|
||||
getActiveStateIndexByKey: Components.GetActiveStateIndexByKey,
|
||||
isActive: Components.IsActive,
|
||||
start: Components.Start,
|
||||
payloadComplete: Components.PayloadComplete,
|
||||
bootState: Components.BootState,
|
||||
loadComplete: Components.LoadComplete,
|
||||
create: Components.Create,
|
||||
pause: Components.Pause,
|
||||
resume: Components.Resume,
|
||||
sleep: Components.Sleep,
|
||||
wake: Components.Wake,
|
||||
swap: Components.Swap,
|
||||
isSleeping: Components.IsSleeping,
|
||||
stop: Components.Stop,
|
||||
swapPosition: Components.SwapPosition,
|
||||
moveUp: Components.MoveUp,
|
||||
loadComplete: Components.LoadComplete,
|
||||
moveDown: Components.MoveDown,
|
||||
bringToTop: Components.BringToTop
|
||||
moveUp: Components.MoveUp,
|
||||
pause: Components.Pause,
|
||||
payloadComplete: Components.PayloadComplete,
|
||||
resume: Components.Resume,
|
||||
sendToBack: Components.SendToBack,
|
||||
setupCallbacks: Components.SetupCallbacks,
|
||||
sleep: Components.Sleep,
|
||||
start: Components.Start,
|
||||
stop: Components.Stop,
|
||||
swap: Components.Swap,
|
||||
swapPosition: Components.SwapPosition,
|
||||
wake: Components.Wake
|
||||
|
||||
});
|
||||
|
||||
|
|
21
v3/src/state/components/SendToBack.js
Normal file
21
v3/src/state/components/SendToBack.js
Normal file
|
@ -0,0 +1,21 @@
|
|||
// If the arguments are strings they are assumed to be keys, otherwise they are State objects
|
||||
// You can only swap the positions of Active (rendering / updating) States. If a State is not active it cannot be moved.
|
||||
|
||||
var SendToBack = function (state)
|
||||
{
|
||||
var index = (typeof state === 'string') ? this.getActiveStateIndexByKey(state) : this.getActiveStateIndex(state);
|
||||
|
||||
if (index > 0)
|
||||
{
|
||||
var entry = this.active.splice(index, 1);
|
||||
|
||||
this.active.unshift({ index: 0, state: entry[0].state });
|
||||
|
||||
for (var i = 0; i < this.active.length; i++)
|
||||
{
|
||||
this.active[i].index = i;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
module.exports = SendToBack;
|
|
@ -2,36 +2,37 @@ module.exports = {
|
|||
|
||||
Add: require('./Add'),
|
||||
Boot: require('./Boot'),
|
||||
GetKey: require('./GetKey'),
|
||||
BootState: require('./BootState'),
|
||||
BringToTop: require('./BringToTop'),
|
||||
Create: require('./Create'),
|
||||
CreateStateDisplay: require('./CreateStateDisplay'),
|
||||
CreateStateFromFunction: require('./CreateStateFromFunction'),
|
||||
CreateStateFromInstance: require('./CreateStateFromInstance'),
|
||||
CreateStateFromObject: require('./CreateStateFromObject'),
|
||||
CreateStateFromFunction: require('./CreateStateFromFunction'),
|
||||
SetupCallbacks: require('./SetupCallbacks'),
|
||||
CreateStateDisplay: require('./CreateStateDisplay'),
|
||||
GetActiveState: require('./GetActiveState'),
|
||||
GetActiveStateIndex: require('./GetActiveStateIndex'),
|
||||
GetActiveStateIndexByKey: require('./GetActiveStateIndexByKey'),
|
||||
GetKey: require('./GetKey'),
|
||||
GetState: require('./GetState'),
|
||||
GetStateAt: require('./GetStateAt'),
|
||||
GetStateIndex: require('./GetStateIndex'),
|
||||
GetStateIndexByKey: require('./GetStateIndexByKey'),
|
||||
GetActiveState: require('./GetActiveState'),
|
||||
GetActiveStateIndex: require('./GetActiveStateIndex'),
|
||||
GetActiveStateIndexByKey: require('./GetActiveStateIndexByKey'),
|
||||
IsActive: require('./IsActive'),
|
||||
Start: require('./Start'),
|
||||
PayloadComplete: require('./PayloadComplete'),
|
||||
BootState: require('./BootState'),
|
||||
LoadComplete: require('./LoadComplete'),
|
||||
Create: require('./Create'),
|
||||
Pause: require('./Pause'),
|
||||
Resume: require('./Resume'),
|
||||
Sleep: require('./Sleep'),
|
||||
Wake: require('./Wake'),
|
||||
Swap: require('./Swap'),
|
||||
IsSleeping: require('./IsSleeping'),
|
||||
Stop: require('./Stop'),
|
||||
SortStates: require('./SortStates'),
|
||||
SwapPosition: require('./SwapPosition'),
|
||||
MoveUp: require('./MoveUp'),
|
||||
LoadComplete: require('./LoadComplete'),
|
||||
MoveDown: require('./MoveDown'),
|
||||
BringToTop: require('./BringToTop')
|
||||
MoveUp: require('./MoveUp'),
|
||||
Pause: require('./Pause'),
|
||||
PayloadComplete: require('./PayloadComplete'),
|
||||
Resume: require('./Resume'),
|
||||
SendToBack: require('./SendToBack'),
|
||||
SetupCallbacks: require('./SetupCallbacks'),
|
||||
Sleep: require('./Sleep'),
|
||||
SortStates: require('./SortStates'),
|
||||
Start: require('./Start'),
|
||||
Stop: require('./Stop'),
|
||||
Swap: require('./Swap'),
|
||||
SwapPosition: require('./SwapPosition'),
|
||||
Wake: require('./Wake')
|
||||
|
||||
};
|
||||
|
|
Loading…
Add table
Reference in a new issue