本文整理汇总了C++中IDocumentSettings::getGridBounds方法的典型用法代码示例。如果您正苦于以下问题:C++ IDocumentSettings::getGridBounds方法的具体用法?C++ IDocumentSettings::getGridBounds怎么用?C++ IDocumentSettings::getGridBounds使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IDocumentSettings
的用法示例。
在下文中一共展示了IDocumentSettings::getGridBounds方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: onExecute
void GridSettingsCommand::onExecute(Context* context)
{
base::UniquePtr<Window> window(app::load_widget<Window>("grid_settings.xml", "grid_settings"));
Widget* button_ok = app::find_widget<Widget>(window, "ok");
Widget* grid_x = app::find_widget<Widget>(window, "grid_x");
Widget* grid_y = app::find_widget<Widget>(window, "grid_y");
Widget* grid_w = app::find_widget<Widget>(window, "grid_w");
Widget* grid_h = app::find_widget<Widget>(window, "grid_h");
IDocumentSettings* docSettings = context->settings()->getDocumentSettings(context->activeDocument());
Rect bounds = docSettings->getGridBounds();
grid_x->setTextf("%d", bounds.x);
grid_y->setTextf("%d", bounds.y);
grid_w->setTextf("%d", bounds.w);
grid_h->setTextf("%d", bounds.h);
window->openWindowInForeground();
if (window->getKiller() == button_ok) {
bounds.x = grid_x->getTextInt();
bounds.y = grid_y->getTextInt();
bounds.w = grid_w->getTextInt();
bounds.h = grid_h->getTextInt();
bounds.w = MAX(bounds.w, 1);
bounds.h = MAX(bounds.h, 1);
docSettings->setGridBounds(bounds);
}
}
示例2: onExecute
void ScrollCommand::onExecute(Context* context)
{
IDocumentSettings* docSettings = context->getSettings()->getDocumentSettings(context->getActiveDocument());
ui::View* view = ui::View::getView(current_editor);
gfx::Rect vp = view->getViewportBounds();
gfx::Point scroll = view->getViewScroll();
gfx::Rect gridBounds = docSettings->getGridBounds();
int dx = 0;
int dy = 0;
int pixels = 0;
switch (m_units) {
case Pixel:
pixels = 1;
break;
case TileWidth:
pixels = gridBounds.w;
break;
case TileHeight:
pixels = gridBounds.h;
break;
case ZoomedPixel:
pixels = 1 << current_editor->getZoom();
break;
case ZoomedTileWidth:
pixels = gridBounds.w << current_editor->getZoom();
break;
case ZoomedTileHeight:
pixels = gridBounds.h << current_editor->getZoom();
break;
case ViewportWidth:
pixels = vp.h;
break;
case ViewportHeight:
pixels = vp.w;
break;
}
switch (m_direction) {
case Left: dx = -m_quantity * pixels; break;
case Right: dx = +m_quantity * pixels; break;
case Up: dy = -m_quantity * pixels; break;
case Down: dy = +m_quantity * pixels; break;
}
current_editor->setEditorScroll(scroll.x+dx, scroll.y+dy, true);
}