当前位置: 首页>>代码示例>>C++>>正文


C++ Doc::isMaskVisible方法代码示例

本文整理汇总了C++中Doc::isMaskVisible方法的典型用法代码示例。如果您正苦于以下问题:C++ Doc::isMaskVisible方法的具体用法?C++ Doc::isMaskVisible怎么用?C++ Doc::isMaskVisible使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Doc的用法示例。


在下文中一共展示了Doc::isMaskVisible方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: onUndo

void ReselectMask::onUndo()
{
  Doc* doc = document();

  m_oldMask.reset(doc->isMaskVisible() ? new Mask(*doc->mask()): nullptr);

  doc->setMaskVisible(false);
  doc->notifySelectionChanged();
}
开发者ID:aseprite,项目名称:aseprite,代码行数:9,代码来源:reselect_mask.cpp

示例2: WithCel

ClearMask::ClearMask(Cel* cel)
  : WithCel(cel)
{
  Doc* doc = static_cast<Doc*>(cel->document());

  // If the mask is empty or is not visible then we have to clear the
  // entire image in the cel.
  if (!doc->isMaskVisible()) {
    m_seq.add(new cmd::ClearCel(cel));
    return;
  }

  Image* image = cel->image();
  assert(image);
  if (!image)
    return;

  Mask* mask = doc->mask();
  m_offset = mask->bounds().origin() - cel->position();

  gfx::Rect bounds =
    image->bounds().createIntersection(
      gfx::Rect(
        m_offset.x, m_offset.y,
        mask->bounds().w, mask->bounds().h));
  if (bounds.isEmpty())
    return;

  m_dstImage.reset(new WithImage(image));
  m_bgcolor = doc->bgColor(cel->layer());
  m_boundsX = bounds.x;
  m_boundsY = bounds.y;

  m_copy.reset(crop_image(image,
      bounds.x, bounds.y, bounds.w, bounds.h, m_bgcolor));
}
开发者ID:aseprite,项目名称:aseprite,代码行数:36,代码来源:clear_mask.cpp


注:本文中的Doc::isMaskVisible方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。