Files
test2/source/blender/editors/interface/view2d/view2d_intern.hh
Julian Eisel 04f570a01f Refactor: UI: Move View2D files into directory
As proposed in #98518, this moves all `View2D` files into
a `source/blender/editors/inteface/view2d/` directory. This helps
keeping the `interface/` directory clean. In general I think we should
promote a more modular thinking, where coherent parts of the code form a
module or sub-module. The directory structure and its files can reflect
that nicely.

Pull Request: https://projects.blender.org/blender/blender/pulls/132853
2025-01-09 16:55:54 +01:00

44 lines
1021 B
C++

/* SPDX-FileCopyrightText: 2023 Blender Authors
*
* SPDX-License-Identifier: GPL-2.0-or-later */
/** \file
* \ingroup edinterface
*
* Share between view2d_*.cc files.
*/
#pragma once
#include "DNA_vec_types.h"
struct bContext;
struct View2D;
struct View2DScrollers {
/* focus bubbles */
int vert_min, vert_max; /* vertical scroll-bar */
int hor_min, hor_max; /* horizontal scroll-bar */
/** Exact size of slider backdrop. */
rcti hor, vert;
};
/**
* Calculate relevant scroller properties.
*/
void view2d_scrollers_calc(View2D *v2d, const rcti *mask_custom, View2DScrollers *r_scrollers);
/**
* Change the size of the maximum viewable area (i.e. 'tot' rect).
*/
void view2d_totRect_set_resize(View2D *v2d, int width, int height, bool resize);
bool view2d_edge_pan_poll(bContext *C);
/**
* For paginated scrolling, get the page height to scroll. This may be a custom height
* (#View2D.page_size_y) but defaults to the #View2D.mask height.
*/
float view2d_page_size_y(const View2D &v2d);