excalidraw/src/actions/actionZindex.tsx

62 lines
1.6 KiB
TypeScript
Raw Normal View History

import { Action } from "./types";
import {
moveOneLeft,
moveOneRight,
moveAllLeft,
2020-01-24 12:04:54 +02:00
moveAllRight,
} from "../zindex";
import { getSelectedIndices } from "../scene";
2020-01-19 13:21:33 -08:00
import { KEYS } from "../keys";
export const actionSendBackward: Action = {
name: "sendBackward",
perform: (elements, appState) => {
return {
elements: moveOneLeft([...elements], getSelectedIndices(elements)),
2020-01-24 12:04:54 +02:00
appState,
};
},
contextItemLabel: "labels.sendBackward",
keyPriority: 40,
keyTest: event =>
2020-01-24 12:04:54 +02:00
event[KEYS.META] && event.shiftKey && event.altKey && event.code === "KeyB",
};
export const actionBringForward: Action = {
name: "bringForward",
perform: (elements, appState) => {
return {
elements: moveOneRight([...elements], getSelectedIndices(elements)),
2020-01-24 12:04:54 +02:00
appState,
};
},
contextItemLabel: "labels.bringForward",
keyPriority: 40,
keyTest: event =>
2020-01-24 12:04:54 +02:00
event[KEYS.META] && event.shiftKey && event.altKey && event.code === "KeyF",
};
export const actionSendToBack: Action = {
name: "sendToBack",
perform: (elements, appState) => {
return {
elements: moveAllLeft([...elements], getSelectedIndices(elements)),
2020-01-24 12:04:54 +02:00
appState,
};
},
contextItemLabel: "labels.sendToBack",
2020-01-24 12:04:54 +02:00
keyTest: event => event[KEYS.META] && event.shiftKey && event.code === "KeyB",
};
export const actionBringToFront: Action = {
name: "bringToFront",
perform: (elements, appState) => {
return {
elements: moveAllRight([...elements], getSelectedIndices(elements)),
2020-01-24 12:04:54 +02:00
appState,
};
},
contextItemLabel: "labels.bringToFront",
2020-01-24 12:04:54 +02:00
keyTest: event => event[KEYS.META] && event.shiftKey && event.code === "KeyF",
};