本文整理汇总了TypeScript中aerial-common2.shiftBounds函数的典型用法代码示例。如果您正苦于以下问题:TypeScript shiftBounds函数的具体用法?TypeScript shiftBounds怎么用?TypeScript shiftBounds使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了shiftBounds函数的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的TypeScript代码示例。
示例1: weakMemo
export const getElementStartPosition = weakMemo((element: SyntheticElement, window: SyntheticWindow) => {
// if the element is relative, then we just need to subtract the css style from the computed bounds to figure out where its static position is.
let { left, top, borderLeftWidth, borderTopWidth } = convertElementMeasurementsToNumbers(element, window);
return shiftBounds(window.allComputedBounds[element.$id], {
left: -left,
top: -top
});
});
开发者ID:cryptobuks,项目名称:tandem,代码行数:8,代码来源:synthetic-element-bounds.ts
示例2: weakMemo
export const getWorkspaceItemBounds = weakMemo((value: any, workspace: Workspace) => {
if (!value) {
return null;
}
if ((value as Artboard).$type === ARTBOARD) {
return (value as Artboard).bounds;
} else {
const artboard = getNodeArtboard((value as SlimBaseNode).id, workspace);
return shiftBounds(getComputedNodeBounds(value.id, artboard), artboard.bounds);
}
});
开发者ID:cryptobuks,项目名称:tandem,代码行数:11,代码来源:index.ts
示例3: fork
yield fork(function* handleMoveNode() {
while(true) {
const { itemType, itemId, point, targetSelectors }: Moved = (yield take((action: Moved) => action.type === MOVED && isSyntheticNodeType(action.itemType) && !!flattenWindowObjectSources(window.struct)[action.itemId]));
// compute based on the data currently in the store
const syntheticWindow = getSyntheticWindow(yield select(), window.$id);
const syntheticNode = getSyntheticNodeById(yield select(), itemId);
const originalRect = syntheticWindow.allComputedBounds[syntheticNode.$id];
const computedStyle = syntheticWindow.allComputedStyles[syntheticNode.$id];
// TODO - computed boxes MUST also contain the offset of the parent.
const relativeRect = roundBounds(shiftBounds(convertAbsoluteBoundsToRelative(
pointToBounds(point),
syntheticNode as SyntheticElement,
syntheticWindow
), {
left: -syntheticWindow.bounds.left,
top: -syntheticWindow.bounds.top
}));
const envElement = flattenWindowObjectSources(window.struct)[syntheticNode.$id] as any as SEnvHTMLElementInterface;
const { top, left, position } = getTargetStyleOwners(envElement, ["top", "left", "position"], targetSelectors);
// TODO - get best CSS style
if (computedStyle.position === "static") {
position.style.setProperty("position", "relative");
}
// transitions will foo with dragging, so temporarily
// disable them
// TODO - need to fix this -- causes jumpy CSS inspector
// envElement.style.setProperty("transition", "none");
left.style.setProperty("left", `${relativeRect.left}px`);
top.style.setProperty("top", `${relativeRect.top}px`);
}
});
开发者ID:cryptobuks,项目名称:tandem,代码行数:38,代码来源:synthetic-browser.ts
示例4: weakMemo
export const getSyntheticBrowserItemBounds = weakMemo((root: SyntheticBrowserRootState|SyntheticBrowser, item: Partial<Struct & Bounded>) => {
if (!item) return null;
if (item.bounds) return item.bounds;
const window = getSyntheticNodeWindow(root, item.$id);
return window && window.allComputedBounds[item.$id] && shiftBounds(window.allComputedBounds[item.$id], window.bounds);
});
开发者ID:cryptobuks,项目名称:tandem,代码行数:6,代码来源:index.ts
注:本文中的aerial-common2.shiftBounds函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论