本文整理汇总了C++中DisplayModel::GetViewPort方法的典型用法代码示例。如果您正苦于以下问题:C++ DisplayModel::GetViewPort方法的具体用法?C++ DisplayModel::GetViewPort怎么用?C++ DisplayModel::GetViewPort使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DisplayModel
的用法示例。
在下文中一共展示了DisplayModel::GetViewPort方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: OnSelectionEdgeAutoscroll
void OnSelectionEdgeAutoscroll(WindowInfo* win, int x, int y) {
int dx = 0, dy = 0;
if (x < SELECT_AUTOSCROLL_AREA_WIDTH)
dx = -SELECT_AUTOSCROLL_STEP_LENGTH;
else if (x > win->canvasRc.dx - SELECT_AUTOSCROLL_AREA_WIDTH)
dx = SELECT_AUTOSCROLL_STEP_LENGTH;
if (y < SELECT_AUTOSCROLL_AREA_WIDTH)
dy = -SELECT_AUTOSCROLL_STEP_LENGTH;
else if (y > win->canvasRc.dy - SELECT_AUTOSCROLL_AREA_WIDTH)
dy = SELECT_AUTOSCROLL_STEP_LENGTH;
CrashIf(NeedsSelectionEdgeAutoscroll(win, x, y) != (dx != 0 || dy != 0));
if (dx != 0 || dy != 0) {
CrashIf(!win->AsFixed());
DisplayModel* dm = win->AsFixed();
PointI oldOffset = dm->GetViewPort().TL();
win->MoveDocBy(dx, dy);
dx = dm->GetViewPort().x - oldOffset.x;
dy = dm->GetViewPort().y - oldOffset.y;
win->selectionRect.x -= dx;
win->selectionRect.y -= dy;
win->selectionRect.dx += dx;
win->selectionRect.dy += dy;
}
}