• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

TypeScript aerial-common2.shiftBounds函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了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;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
TypeScript aerial-common2.weakMemo函数代码示例发布时间:2022-05-28
下一篇:
TypeScript aerial-common2.moveBounds函数代码示例发布时间:2022-05-28
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap