|
Blender V5.0
|
Go to the source code of this file.
Classes | |
| struct | View2DEdgePanData |
Macros | |
Defines for Scroll Bars | |
| #define | V2D_SCROLL_HEIGHT ((0.45f * U.widget_unit) + (2.0f * U.pixelsize)) |
| #define | V2D_SCROLL_WIDTH ((0.45f * U.widget_unit) + (2.0f * U.pixelsize)) |
| #define | V2D_SCROLL_MIN_ALPHA (0.4f) |
| #define | V2D_SCROLL_MIN_WIDTH ((5.0f * UI_SCALE_FAC) + (2.0f * U.pixelsize)) |
| #define | V2D_SCROLL_HIDE_WIDTH (AREAMINX * UI_SCALE_FAC) |
| #define | V2D_SCROLL_HIDE_HEIGHT (HEADERY * UI_SCALE_FAC) |
| #define | V2D_SCROLL_HANDLE_HEIGHT (0.6f * U.widget_unit) |
| #define | V2D_SCROLL_HANDLE_WIDTH (0.6f * U.widget_unit) |
| #define | V2D_SCROLL_HANDLE_SIZE_HOTSPOT (0.6f * U.widget_unit) |
| #define | V2D_SCROLL_THUMB_SIZE_MIN (30.0 * UI_SCALE_FAC) |
Define for #UI_view2d_sync | |
| #define | V2D_LOCK_SET 0 |
| #define | V2D_LOCK_COPY 1 |
Macros | |
| #define | IN_2D_VERT_SCROLL(v2d, co) |
| #define | IN_2D_HORIZ_SCROLL(v2d, co) |
| #define | IN_2D_VERT_SCROLL_RECT(v2d, rct) |
| #define | IN_2D_HORIZ_SCROLL_RECT(v2d, rct) |
General Defines | |
| #define | V2D_IS_CLIPPED 12000 |
| enum | eView2D_CommonViewTypes { V2D_COMMONVIEW_CUSTOM = -1 , V2D_COMMONVIEW_STANDARD , V2D_COMMONVIEW_LIST , V2D_COMMONVIEW_STACK , V2D_COMMONVIEW_HEADER , V2D_COMMONVIEW_PANELS_UI } |
Operators | |
| #define | UI_MARKER_MARGIN_Y (42 * UI_SCALE_FAC) |
| #define | UI_TIME_SCRUB_MARGIN_Y (23 * UI_SCALE_FAC) |
| #define | UI_TIME_CACHE_MARGIN_Y (UI_TIME_SCRUB_MARGIN_Y / 6.0f) |
| #define | UI_ANIM_MINY (HEADERY * UI_SCALE_FAC * 1.1f) |
| #define | UI_MARKERS_MINY (HEADERY * UI_SCALE_FAC * 2.0f) |
| void | ED_operatortypes_view2d () |
| void | ED_keymap_view2d (wmKeyConfig *keyconf) |
| void | UI_view2d_smooth_view (const bContext *C, ARegion *region, const rctf *cur, int smooth_viewtx) |
Generic 2D view with should allow drawing grids, panning, zooming, scrolling, .. etc.
Definition in file UI_view2d.hh.
| #define IN_2D_HORIZ_SCROLL | ( | v2d, | |
| co ) |
Definition at line 95 of file UI_view2d.hh.
Referenced by UI_view2d_mouse_in_scrollers_ex().
| #define IN_2D_HORIZ_SCROLL_RECT | ( | v2d, | |
| rct ) |
Definition at line 98 of file UI_view2d.hh.
Referenced by UI_view2d_rect_in_scrollers_ex().
| #define IN_2D_VERT_SCROLL | ( | v2d, | |
| co ) |
Definition at line 94 of file UI_view2d.hh.
Referenced by UI_view2d_mouse_in_scrollers_ex().
| #define IN_2D_VERT_SCROLL_RECT | ( | v2d, | |
| rct ) |
Definition at line 97 of file UI_view2d.hh.
Referenced by UI_view2d_rect_in_scrollers_ex().
| #define UI_ANIM_MINY (HEADERY * UI_SCALE_FAC * 1.1f) |
Definition at line 481 of file UI_view2d.hh.
Referenced by action_main_region_draw(), action_main_region_draw_overlay(), blender::ed::vse::draw_timeline_seq_display(), ED_markers_region_visible(), graph_main_region_draw(), graph_main_region_draw_overlay(), nla_main_region_draw(), nla_main_region_draw_overlay(), and nla_track_region_draw().
| #define UI_MARKER_MARGIN_Y (42 * UI_SCALE_FAC) |
Definition at line 478 of file UI_view2d.hh.
Referenced by add_region_padding(), ED_markers_region_visible(), get_marker_region_rect(), graphkeys_viewall(), nla_track_region_draw(), blender::ed::vse::SEQ_get_timeline_region_padding(), blender::ed::vse::sequencer_main_clamp_view(), set_v2d_height(), and WM_event_handler_region_marker_poll().
| #define UI_MARKERS_MINY (HEADERY * UI_SCALE_FAC * 2.0f) |
Definition at line 482 of file UI_view2d.hh.
Referenced by ed_markers_poll_markers_exist_visible().
| #define UI_TIME_CACHE_MARGIN_Y (UI_TIME_SCRUB_MARGIN_Y / 6.0f) |
Definition at line 480 of file UI_view2d.hh.
Referenced by blender::ed::vse::draw_cache_background(), blender::ed::vse::draw_cache_final_iter_fn(), and blender::ed::vse::SEQ_get_timeline_region_padding().
| #define UI_TIME_SCRUB_MARGIN_Y (23 * UI_SCALE_FAC) |
Definition at line 479 of file UI_view2d.hh.
Referenced by add_region_padding(), ANIM_UI_get_first_channel_top(), blender::ed::vse::draw_cache_background(), blender::ed::vse::draw_cache_final_iter_fn(), ED_time_scrub_channel_search_draw(), ED_time_scrub_clamp_scroller_mask(), ED_time_scrub_event_in_region(), ED_time_scrub_region_rect_get(), graph_main_region_draw_overlay(), graph_region_draw(), graphkeys_viewall(), blender::ed::vse::pick_strip_and_handle(), blender::ed::vse::SEQ_get_timeline_region_padding(), and blender::ed::vse::sequencer_main_cursor().
| #define V2D_IS_CLIPPED 12000 |
Generic value to use when coordinate lies out of view when converting.
Definition at line 21 of file UI_view2d.hh.
Referenced by annotation_stroke_eraser_dostroke(), blender::ed::vse::do_lasso_select_is_origin_inside(), do_lasso_select_marker(), do_lasso_select_mesh_uv_is_edge_inside(), do_lasso_select_mesh_uv_is_point_inside(), gpencil_point_to_xy(), blender::io::grease_pencil::GreasePencilExporter::project_to_screen(), blender::ed::vse::rcti_in_lasso(), UI_view2d_view_to_region_clip(), UI_view2d_view_to_region_rcti_clip(), and UI_view2d_view_to_region_segment_clip().
| #define V2D_LOCK_COPY 1 |
Definition at line 85 of file UI_view2d.hh.
Referenced by actkeys_viewall(), clip_draw_dopesheet_channels(), draw_channel_names(), draw_nla_track_list(), edge_pan_apply_delta(), nlaedit_viewall(), reset_exec(), scene_range_frame_exec(), scroller_activate_apply(), blender::ed::vse::sequencer_view_all_preview_exec(), UI_view2d_edge_pan_cancel(), UI_view2d_smooth_view(), UI_view2d_sync(), view2d_smoothview_invoke(), view_pan_apply_ex(), view_zoomdrag_apply(), and view_zoomstep_apply_ex().
| #define V2D_LOCK_SET 0 |
Definition at line 83 of file UI_view2d.hh.
| #define V2D_SCROLL_HANDLE_HEIGHT (0.6f * U.widget_unit) |
Scroll bars with 'handles' used for scale (zoom).
Definition at line 67 of file UI_view2d.hh.
Referenced by add_region_padding(), graphkeys_viewall(), blender::ed::vse::SEQ_get_timeline_region_padding(), timeline_cache_draw_geometry_nodes(), timeline_cache_draw_single(), and UI_view2d_scroller_size_get().
| #define V2D_SCROLL_HANDLE_SIZE_HOTSPOT (0.6f * U.widget_unit) |
Scroll bar with 'handles' hot-spot radius for cursor proximity.
Definition at line 71 of file UI_view2d.hh.
Referenced by scrollbar_zone_get(), UI_view2d_scrollers_draw(), and view2d_scrollers_calc().
| #define V2D_SCROLL_HANDLE_WIDTH (0.6f * U.widget_unit) |
Definition at line 68 of file UI_view2d.hh.
Referenced by UI_view2d_scroller_size_get().
| #define V2D_SCROLL_HEIGHT ((0.45f * U.widget_unit) + (2.0f * U.pixelsize)) |
Scroll bar area.
Definition at line 53 of file UI_view2d.hh.
Referenced by ED_fileselect_init_layout(), blender::ed::outliner::outliner_update_viewable_area(), and UI_view2d_scroller_size_get().
| #define V2D_SCROLL_HIDE_HEIGHT (HEADERY * UI_SCALE_FAC) |
Definition at line 64 of file UI_view2d.hh.
Referenced by area_actionzone_get_rect(), and area_actionzone_refresh_xy().
| #define V2D_SCROLL_HIDE_WIDTH (AREAMINX * UI_SCALE_FAC) |
Definition at line 63 of file UI_view2d.hh.
Referenced by area_actionzone_get_rect(), and area_actionzone_refresh_xy().
| #define V2D_SCROLL_MIN_ALPHA (0.4f) |
Definition at line 57 of file UI_view2d.hh.
Referenced by UI_view2d_scrollers_draw().
| #define V2D_SCROLL_MIN_WIDTH ((5.0f * UI_SCALE_FAC) + (2.0f * U.pixelsize)) |
Definition at line 60 of file UI_view2d.hh.
Referenced by UI_view2d_scroller_size_get().
| #define V2D_SCROLL_THUMB_SIZE_MIN (30.0 * UI_SCALE_FAC) |
Don't allow scroll thumb to show below this size (so it's never too small to click on).
Definition at line 74 of file UI_view2d.hh.
Referenced by view2d_scrollers_calc().
| #define V2D_SCROLL_WIDTH ((0.45f * U.widget_unit) + (2.0f * U.pixelsize)) |
Definition at line 54 of file UI_view2d.hh.
Referenced by ANIM_channel_draw(), blender::ui::TreeViewLayoutBuilder::build_from_tree(), console_textview_draw_rect_calc(), ED_spacetype_ipo(), graph_draw_channel_names(), info_textview_draw_rect_calc(), blender::ed::outliner::outliner_draw_restrictbuts(), blender::ed::outliner::outliner_right_columns_width(), blender::ed::spreadsheet::register_spacetype(), ui_template_list_layout_draw(), and UI_view2d_scroller_size_get().
Common View2D view types.
Definition at line 29 of file UI_view2d.hh.
| void ED_keymap_view2d | ( | wmKeyConfig * | keyconf | ) |
Definition at line 2359 of file view2d_ops.cc.
References RGN_TYPE_WINDOW, SPACE_EMPTY, and WM_keymap_ensure().
Referenced by ED_spacetypes_keymap().
| void ED_operatortypes_view2d | ( | ) |
Definition at line 2332 of file view2d_ops.cc.
References VIEW2D_OT_edge_pan(), VIEW2D_OT_pan(), VIEW2D_OT_reset(), VIEW2D_OT_scroll_down(), VIEW2D_OT_scroll_left(), VIEW2D_OT_scroll_right(), VIEW2D_OT_scroll_up(), VIEW2D_OT_scroller_activate(), VIEW2D_OT_smoothview(), VIEW2D_OT_zoom(), VIEW2D_OT_zoom_border(), VIEW2D_OT_zoom_in(), VIEW2D_OT_zoom_out(), and WM_operatortype_append().
Referenced by ED_spacetypes_init().
| bool UI_view2d_area_supports_sync | ( | ScrArea * | area | ) |
Definition at line 860 of file view2d.cc.
References ELEM, SPACE_ACTION, SPACE_CLIP, SPACE_GRAPH, SPACE_NLA, SPACE_SEQ, and ScrArea::spacetype.
Referenced by UI_view2d_sync().
Simple functions for consistent center offset access. Used by node editor to shift view center for each individual node tree.
Definition at line 1939 of file view2d.cc.
References BLI_rctf_cent_x(), BLI_rctf_cent_y(), and View2D::cur.
Referenced by actkeys_viewall(), nlaedit_viewall(), and blender::ed::space_node::node_draw_space().
Definition at line 1949 of file view2d.cc.
References BLI_rctf_recenter(), View2D::cur, UI_view2d_curRect_validate(), x, and y.
Referenced by actkeys_viewall(), ED_node_tree_pop(), ED_node_tree_push(), ED_node_tree_start(), nlaedit_viewall(), and blender::ed::space_node::snode_setup_v2d().
Perform all required updates after v2d->cur as been modified. This includes like validation view validation (UI_view2d_curRect_validate).
Current intent is to use it from user code, such as view navigation and zoom operations.
Definition at line 833 of file view2d.cc.
References C, CTX_wm_region(), ARegion::runtime, and UI_view2d_curRect_validate().
Referenced by edge_pan_apply_delta(), reset_exec(), scroller_activate_apply(), blender::ed::vse::sequencer_view_all_preview_exec(), blender::ed::vse::sequencer_view_zoom_ratio_exec(), UI_but_ensure_in_view(), UI_view2d_edge_pan_cancel(), UI_view2d_smooth_view(), view2d_smoothview_invoke(), view_pan_apply_ex(), view_zoomdrag_apply(), and view_zoomstep_apply_ex().
| void UI_view2d_curRect_clamp_y | ( | View2D * | v2d | ) |
Clamp view2d area to what's visible, preventing scrolling vertically to infinity.
Definition at line 844 of file view2d.cc.
References BLI_rctf_size_y(), View2D::cur, View2D::tot, rctf::ymax, and rctf::ymin.
Referenced by nla_track_region_draw(), set_v2d_height(), and set_v2d_height().
| void UI_view2d_curRect_reset | ( | View2D * | v2d | ) |
Restore 'cur' rect to standard orientation (i.e. optimal maximum view of tot). This does not take into account if zooming the view on an axis will improve the view (if allowed).
Definition at line 928 of file view2d.cc.
References View2D::align, BLI_rcti_size_x(), BLI_rcti_size_y(), View2D::cur, float, View2D::mask, V2D_ALIGN_NO_NEG_X, V2D_ALIGN_NO_NEG_Y, V2D_ALIGN_NO_POS_X, V2D_ALIGN_NO_POS_Y, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
| void UI_view2d_curRect_validate | ( | View2D * | v2d | ) |
Definition at line 828 of file view2d.cc.
References ui_view2d_curRect_validate_resize().
Referenced by file_ensure_inside_viewbounds(), blender::ed::vse::preview_draw_begin(), blender::ed::asset::shelf::region_layout(), region_scale_toggle_hidden(), ui_panel_region_width_set(), UI_view2d_center_set(), UI_view2d_curRect_changed(), UI_view2d_offset(), and UI_view2d_offset_y_snap_to_closest_page().
| void UI_view2d_dot_grid_draw | ( | const View2D * | v2d, |
| int | grid_color_id, | ||
| float | min_step, | ||
| int | grid_subdivisions ) |
Draw a multi-level grid of dots, with a dynamic number of levels based on the fading.
| grid_color_id | The theme color used for the points. Faded dynamically based on zoom. |
| min_step | The base size of the grid. At different zoom levels, the visible grid may have a larger step size. |
| grid_subdivisions | The maximum number of sub-levels drawn at once. |
Definition at line 1287 of file view2d.cc.
References BLI_assert, BLI_rctf_size_x(), BLI_rcti_size_x(), ceilf, clamp_f(), View2D::cur, float, fractf, GPU_PRIM_POINTS, GPU_program_point_size(), GPU_SHADER_2D_POINT_UNIFORM_SIZE_UNIFORM_COLOR_AA, GPU_vertformat_attr_add(), grid_axis_start_and_count(), immBegin(), immBindBuiltinProgram(), immEnd(), immUnbindProgram(), immUniform1f(), immUniform4fv(), immVertex2f(), immVertexFormat(), logf, View2D::mask, pos, pow2f(), powf, step, U, UI_GetThemeColor3fv(), x, rctf::xmax, rctf::xmin, y, rctf::ymax, and rctf::ymin.
Referenced by blender::ed::space_node::node_draw_space().
| void UI_view2d_draw_lines_x__discrete_frames_or_seconds | ( | const View2D * | v2d, |
| const Scene * | scene, | ||
| bool | display_seconds, | ||
| bool | display_minor_lines ) |
Definition at line 528 of file view2d_draw.cc.
References round_db_to_int(), UI_view2d_draw_lines_x__discrete_time(), and UI_view2d_draw_lines_x__discrete_values().
Referenced by action_main_region_draw(), dopesheet_region_draw(), blender::ed::vse::draw_timeline_grid(), and nla_main_region_draw().
| void UI_view2d_draw_lines_x__discrete_time | ( | const View2D * | v2d, |
| int | base, | ||
| bool | display_minor_lines ) |
Definition at line 518 of file view2d_draw.cc.
References BLI_rctf_size_x(), BLI_rcti_size_x(), calculate_grid_step(), View2D::cur, View2D::mask, and view2d_draw_lines().
Referenced by UI_view2d_draw_lines_x__discrete_frames_or_seconds(), and UI_view2d_draw_lines_x__frames_or_seconds().
| void UI_view2d_draw_lines_x__discrete_values | ( | const View2D * | v2d, |
| int | base, | ||
| bool | display_minor_lines ) |
Definition at line 494 of file view2d_draw.cc.
References BLI_rctf_size_x(), BLI_rcti_size_x(), calculate_grid_step(), View2D::cur, View2D::mask, and view2d_draw_lines().
Referenced by UI_view2d_draw_lines_x__discrete_frames_or_seconds().
| void UI_view2d_draw_lines_x__frames_or_seconds | ( | const View2D * | v2d, |
| const Scene * | scene, | ||
| bool | display_seconds ) |
Definition at line 543 of file view2d_draw.cc.
References round_db_to_int(), UI_view2d_draw_lines_x__discrete_time(), and UI_view2d_draw_lines_x__values().
Referenced by graph_main_region_draw().
| void UI_view2d_draw_lines_x__values | ( | const View2D * | v2d, |
| int | base ) |
Definition at line 504 of file view2d_draw.cc.
References BLI_rctf_size_x(), BLI_rcti_size_x(), calculate_grid_step_subframes(), View2D::cur, View2D::mask, and view2d_draw_lines().
Referenced by clip_draw_graph(), graph_main_region_draw(), and UI_view2d_draw_lines_x__frames_or_seconds().
| void UI_view2d_draw_lines_y__values | ( | const View2D * | v2d, |
| int | base ) |
Draw horizontal lines.
| base | Defines in what step the lines are drawn. Depending on the zoom level of the v2d the step is a full fraction of the given base. |
Definition at line 511 of file view2d_draw.cc.
References BLI_rctf_size_y(), BLI_rcti_size_y(), calculate_grid_step_subframes(), View2D::cur, View2D::mask, and view2d_draw_lines().
Referenced by clip_draw_graph(), and graph_main_region_draw().
| void UI_view2d_draw_scale_x__discrete_frames_or_seconds | ( | const ARegion * | region, |
| const View2D * | v2d, | ||
| const rcti * | rect, | ||
| const Scene * | scene, | ||
| bool | display_seconds, | ||
| int | colorid, | ||
| int | base ) |
Draw a text scale in either frames or seconds. The minimum step distance is 1, meaning no subframe indicators will be drawn.
Definition at line 568 of file view2d_draw.cc.
References BLI_rctf_size_x(), BLI_rcti_size_x(), calculate_grid_step(), View2D::cur, draw_horizontal_scale_indicators(), View2D::mask, step, view_to_string__frame_number(), and view_to_string__time().
Referenced by ED_time_scrub_draw().
| void UI_view2d_draw_scale_x__frames_or_seconds | ( | const ARegion * | region, |
| const View2D * | v2d, | ||
| const rcti * | rect, | ||
| const Scene * | scene, | ||
| bool | display_seconds, | ||
| int | colorid, | ||
| int | base ) |
Draw a text scale in either frames or seconds. This can draw indicators on subframes, e.g. "1.5".
Definition at line 588 of file view2d_draw.cc.
References BLI_rctf_size_x(), BLI_rcti_size_x(), calculate_grid_step(), calculate_grid_step_subframes(), View2D::cur, draw_horizontal_scale_indicators(), View2D::mask, step, view_to_string__time(), and view_to_string__value().
Referenced by ED_time_scrub_draw().
| void UI_view2d_draw_scale_y__values | ( | const ARegion * | region, |
| const View2D * | v2d, | ||
| const rcti * | rect, | ||
| int | colorid, | ||
| int | base ) |
Scale indicator text drawing.
Definition at line 559 of file view2d_draw.cc.
References BLI_rctf_size_y(), BLI_rcti_size_y(), calculate_grid_step_subframes(), View2D::cur, draw_vertical_scale_indicators(), View2D::mask, step, and view_to_string__value().
Referenced by graph_main_region_draw_overlay(), and graph_region_draw().
| void UI_view2d_edge_pan_apply | ( | bContext * | C, |
| View2DEdgePanData * | vpd, | ||
| const int | xy[2] ) |
Apply transform to view (i.e. adjust 'cur' rect).
Referenced by blender::ed::transform::flushTransNodes(), blender::ed::spreadsheet::reorder_columns_modal(), and blender::ed::transform::view2d_edge_pan_loc_compensate().
| void void UI_view2d_edge_pan_apply_event | ( | bContext * | C, |
| View2DEdgePanData * | vpd, | ||
| const wmEvent * | event ) |
Apply transform to view using mouse events.
Definition at line 272 of file view2d_edge_pan.cc.
References C, MOUSEMOVE, wmEvent::type, UI_view2d_edge_pan_apply(), and wmEvent::xy.
Referenced by blender::ed::space_node::node_link_modal(), and view_edge_pan_modal().
| void UI_view2d_edge_pan_cancel | ( | bContext * | C, |
| View2DEdgePanData * | vpd ) |
Definition at line 282 of file view2d_edge_pan.cc.
References View2DEdgePanData::area, C, CTX_wm_window(), View2D::cur, ED_region_tag_redraw_no_rebuild(), View2DEdgePanData::initial_rect, View2DEdgePanData::region, View2DEdgePanData::screen, UI_view2d_curRect_changed(), UI_view2d_sync(), View2DEdgePanData::v2d, V2D_LOCK_COPY, and WM_event_add_mousemove().
Referenced by blender::ed::transform::flushTransNodes(), blender::ed::space_node::node_link_cancel(), blender::ed::spreadsheet::reorder_columns_modal(), and blender::ed::transform::view2d_edge_pan_loc_compensate().
| void UI_view2d_edge_pan_init | ( | bContext * | C, |
| View2DEdgePanData * | vpd, | ||
| float | inside_pad, | ||
| float | outside_pad, | ||
| float | speed_ramp, | ||
| float | max_speed, | ||
| float | delay, | ||
| float | zoom_influence ) |
Definition at line 51 of file view2d_edge_pan.cc.
References View2DEdgePanData::area, BLI_assert, BLI_rctf_init(), BLI_rctf_size_x(), BLI_rctf_size_y(), BLI_rcti_size_x(), BLI_rcti_size_y(), C, CTX_wm_area(), CTX_wm_region(), CTX_wm_screen(), View2D::cur, View2DEdgePanData::delay, View2DEdgePanData::enabled, View2DEdgePanData::facx, View2DEdgePanData::facy, float, FLT_MAX, View2DEdgePanData::inside_pad, View2DEdgePanData::limit, View2DEdgePanData::max_speed, View2DEdgePanData::outside_pad, View2DEdgePanData::region, View2DEdgePanData::screen, View2DEdgePanData::speed_ramp, UI_view2d_edge_pan_reset(), ARegion::v2d, View2DEdgePanData::v2d, view2d_edge_pan_poll(), ARegion::winrct, and View2DEdgePanData::zoom_influence.
Referenced by blender::ed::transform::createTransNodeData(), blender::ed::transform::createTransSeqData(), blender::ed::spreadsheet::reorder_columns_invoke(), and UI_view2d_edge_pan_operator_init().
| void UI_view2d_edge_pan_operator_init | ( | bContext * | C, |
| View2DEdgePanData * | vpd, | ||
| wmOperator * | op ) |
Initialize panning data with operator settings.
Definition at line 381 of file view2d_edge_pan.cc.
References C, wmOperator::ptr, RNA_float_get(), and UI_view2d_edge_pan_init().
Referenced by blender::ed::space_node::node_link_invoke(), and view_edge_pan_invoke().
| void UI_view2d_edge_pan_operator_properties | ( | wmOperatorType * | ot | ) |
Definition at line 303 of file view2d_edge_pan.cc.
References ot, and UI_view2d_edge_pan_operator_properties_ex().
Referenced by VIEW2D_OT_edge_pan().
| void UI_view2d_edge_pan_operator_properties_ex | ( | wmOperatorType * | ot, |
| float | inside_pad, | ||
| float | outside_pad, | ||
| float | speed_ramp, | ||
| float | max_speed, | ||
| float | delay, | ||
| float | zoom_influence ) |
Definition at line 315 of file view2d_edge_pan.cc.
References ot, and RNA_def_float().
Referenced by blender::ed::space_node::NODE_OT_link(), and UI_view2d_edge_pan_operator_properties().
| void UI_view2d_edge_pan_reset | ( | View2DEdgePanData * | vpd | ) |
Definition at line 96 of file view2d_edge_pan.cc.
References BLI_time_now_seconds(), View2D::cur, View2DEdgePanData::edge_pan_last_time, View2DEdgePanData::edge_pan_start_time_x, View2DEdgePanData::edge_pan_start_time_y, View2DEdgePanData::initial_rect, View2DEdgePanData::region, and ARegion::v2d.
Referenced by UI_view2d_edge_pan_init().
| void UI_view2d_edge_pan_set_limits | ( | View2DEdgePanData * | vpd, |
| float | xmin, | ||
| float | xmax, | ||
| float | ymin, | ||
| float | ymax ) |
Set area which can be panned
Definition at line 90 of file view2d_edge_pan.cc.
References BLI_rctf_init(), and View2DEdgePanData::limit.
Referenced by blender::ed::transform::createTransSeqData().
View2D data by default resides in region, so get from region stored in context.
Definition at line 1855 of file view2d.cc.
References C, CTX_wm_area(), CTX_wm_region(), and ARegion::v2d.
Referenced by buttons_main_region_layout(), blender::ed::vse::cursor_set_by_mouse_position(), blender::ed::vse::draw_cache_background(), blender::ed::vse::draw_cache_view(), ed_marker_box_select_exec(), ed_marker_move_modal(), ed_marker_select(), ED_markers_draw(), blender::ed::vse::mouse_over_key_get_from_strip(), blender::ed::vse::pixels_to_view_height(), blender::ed::vse::pixels_to_view_width(), blender::ed::vse::retiming_fake_key_frame_clicked(), blender::ed::vse::retiming_mouseover_key_get(), blender::ed::vse::sequencer_box_select_exec(), blender::ed::vse::sequencer_box_select_invoke(), blender::ed::vse::sequencer_clipboard_paste_exec(), blender::ed::vse::sequencer_retiming_box_select_exec(), blender::ed::vse::sequencer_select_exec(), blender::ed::vse::sequencer_select_handle_exec(), blender::ed::vse::sequencer_select_linked_pick_invoke(), sequencer_skip_for_handle_tweak(), blender::ed::vse::sequencer_slip_invoke(), blender::ed::vse::sequencer_slip_modal(), blender::ed::vse::sequencer_split_invoke(), blender::ed::vse::sequencer_text_cursor_set_invoke(), blender::ed::vse::sequencer_view_all_preview_exec(), blender::ed::vse::sequencer_view_selected_exec(), blender::ed::vse::sequencer_view_zoom_ratio_exec(), blender::ed::vse::sequencer_visible_strips_get(), blender::ed::vse::slip_data_init(), blender::ed::vse::strip_select_from_preview(), blender::ed::vse::text_edit_draw_cursor(), blender::ed::vse::timeline_draw_context_get(), blender::ed::vse::view_frame_preview_scope(), blender::ed::vse::view_ghost_border_exec(), and blender::ed::vse::vse_circle_select_exec().
Same as UI_view2d_fromcontext, but it returns region-window. Utility for pull-downs or buttons.
Definition at line 1869 of file view2d.cc.
References BKE_area_find_region_type(), C, CTX_wm_area(), CTX_wm_region(), ARegion::regiontype, RGN_TYPE_WINDOW, and ARegion::v2d.
Definition at line 478 of file view2d_draw.cc.
References BLI_rctf_size_x(), BLI_rcti_size_x(), calculate_grid_step_subframes(), View2D::cur, View2D::mask, and round_db_to_int().
Referenced by blender::ed::transform::initTranslation().
Definition at line 485 of file view2d_draw.cc.
References BLI_rctf_size_y(), BLI_rcti_size_y(), calculate_grid_step_subframes(), View2D::cur, and View2D::mask.
Referenced by blender::ed::transform::initTranslation().
| void UI_view2d_listview_view_to_cell | ( | float | columnwidth, |
| float | rowheight, | ||
| float | startx, | ||
| float | starty, | ||
| float | viewx, | ||
| float | viewy, | ||
| int * | r_column, | ||
| int * | r_row ) |
Get the 'cell' (row, column) that the given 2D-view coordinates (i.e. in 'tot' rect space) lie in.
| columnwidth,rowheight | size of each 'cell' |
| startx,starty | coordinates (in 'tot' rect space) that the list starts from. This should be (0,0) for most views. However, for those where the starting row was offsetted (like for Animation Editor channel lists, to make the first entry more visible), these will be the min-coordinates of the first item. |
| viewx,viewy | 2D-coordinates (in 2D-view / 'tot' rect space) to get the cell for |
| r_column,r_row | The 'coordinates' of the relevant 'cell'. |
Definition at line 1621 of file view2d.cc.
References floorf.
Referenced by actkeys_find_list_element_at_position(), animchannels_channel_get(), animchannels_mouseclick_invoke(), nlaedit_strip_at_region_position(), and nlatracks_mouseclick_invoke().
Definition at line 109 of file view2d.cc.
References View2D::winx, View2D::winy, rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.
Referenced by ED_region_panels_draw(), blender::ed::spreadsheet::spreadsheet_main_region_draw(), and view2d_masks().
| char char UI_view2d_mouse_in_scrollers | ( | const ARegion * | region, |
| const View2D * | v2d, | ||
| const int | xy[2] ) |
References xy.
Referenced by console_cursor(), scroller_activate_invoke(), scroller_activate_poll(), blender::ed::vse::sequencer_main_cursor(), ui_handler_panel_region(), and ui_region_contains_point_px().
| char UI_view2d_mouse_in_scrollers_ex | ( | const ARegion * | region, |
| const View2D * | v2d, | ||
| const int | xy[2], | ||
| int * | r_scroll ) |
Check if mouse is within scrollers
| xy | Mouse coordinates in screen (not region) space. |
| r_scroll | Return argument for the mapped view2d scroll flag. |
References xy.
Referenced by area_actionzone_refresh_xy().
| void UI_view2d_multi_grid_draw | ( | const View2D * | v2d, |
| int | colorid, | ||
| float | step, | ||
| int | level_size, | ||
| int | totlevels ) |
Draw a multi-level grid in given 2d-region.
Definition at line 1180 of file view2d.cc.
References View2D::cur, GPU_line_width(), GPU_PRIM_LINES, GPU_SHADER_3D_FLAT_COLOR, GPU_vertformat_attr_add(), i, immAttr4ub(), immAttrSkip(), immBeginAtMost(), immBindBuiltinProgram(), immEnd(), immUnbindProgram(), immVertex2f(), immVertexFormat(), pos, step, TH_GRID, UI_GetThemeColorBlendShade3ubv(), UNPACK3, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Simple pan function (0.0, 0.0) bottom left (0.5, 0.5) center (1.0, 1.0) top right.
Definition at line 1957 of file view2d.cc.
References BLI_rctf_size_x(), BLI_rctf_size_y(), View2D::cur, View2D::tot, UI_view2d_curRect_validate(), rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by ui_handle_panel_header(), and ui_handler_panel_region().
| void UI_view2d_offset_y_snap_to_closest_page | ( | View2D * | v2d | ) |
Scrolls the view so that the upper edge is at a multiple of the page size.
Definition at line 1980 of file view2d.cc.
References BLI_rctf_size_y(), View2D::cur, roundf, UI_view2d_curRect_validate(), view2d_page_size_y(), rctf::ymax, and rctf::ymin.
Referenced by blender::ed::asset::shelf::region_init().
| char char char UI_view2d_rect_in_scrollers_ex | ( | const ARegion * | region, |
| const View2D * | v2d, | ||
| const rcti * | rect, | ||
| int * | r_scroll ) |
| void UI_view2d_region_reinit | ( | View2D * | v2d, |
| short | type, | ||
| int | winx, | ||
| int | winy ) |
Refresh and validation (of view rects).
Initialize all relevant View2D data (including view rects if first time) and/or refresh mask sizes after view resize.
Definition at line 221 of file view2d.cc.
References View2D::align, View2D::alpha_hor, View2D::alpha_vert, View2D::cur, View2D::flag, float, View2D::keepofs, View2D::keeptot, View2D::keepzoom, View2D::max, View2D::maxzoom, View2D::min, View2D::minzoom, uiStyle::panelzoom, View2D::scroll, View2D::tot, UI_style_get(), ui_view2d_curRect_validate_resize(), V2D_ALIGN_NO_NEG_X, V2D_ALIGN_NO_NEG_Y, V2D_ALIGN_NO_POS_Y, V2D_COMMONVIEW_HEADER, V2D_COMMONVIEW_LIST, V2D_COMMONVIEW_PANELS_UI, V2D_COMMONVIEW_STACK, V2D_COMMONVIEW_STANDARD, V2D_IS_INIT, V2D_KEEPASPECT, V2D_KEEPTOT_BOUNDS, V2D_KEEPTOT_STRICT, V2D_KEEPZOOM, V2D_LIMITZOOM, V2D_LOCKOFS_Y, V2D_LOCKZOOM_X, V2D_LOCKZOOM_Y, V2D_SCROLL_HORIZONTAL_HIDE, V2D_SCROLL_VERTICAL_HIDE, view2d_masks(), view2d_totRect_set_resize(), View2D::winx, View2D::winy, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by action_channel_region_init(), action_main_region_init(), clip_channels_region_init(), clip_preview_region_init(), console_main_region_init(), ED_region_header_init(), ED_region_panels_init(), file_main_region_draw(), file_main_region_init(), graph_channel_region_init(), graph_main_region_init(), hud_region_layout(), info_main_region_init(), nla_main_region_init(), nla_track_region_init(), blender::ed::space_node::node_main_region_init(), blender::ed::outliner::outliner_main_region_init(), blender::ed::asset::shelf::region_init(), script_main_region_init(), blender::ed::vse::sequencer_channel_region_init(), blender::ed::vse::sequencer_main_region_init(), blender::ed::vse::sequencer_preview_region_init(), blender::ed::spreadsheet::spreadsheet_main_region_init(), text_main_region_init(), and topbar_main_region_init().
| void UI_view2d_region_to_view | ( | const View2D * | v2d, |
| float | x, | ||
| float | y, | ||
| float * | r_view_x, | ||
| float * | r_view_y ) |
Convert from screen/region space to 2d-View space
Definition at line 1668 of file view2d.cc.
References UI_view2d_region_to_view_x(), UI_view2d_region_to_view_y(), x, and y.
Referenced by actkeys_find_list_element_at_position(), blender::ed::space_node::add_reroute_exec(), animchannels_channel_get(), animchannels_mouseclick_invoke(), annotation_stroke_convertcoords(), blender::ed::transform::applyTimeSlide(), blender::ed::transform::applyTimeTranslate(), box_select_action(), box_select_anim_channels(), box_select_nla_strips(), blender::ed::vse::coords_region_view_align(), blender::ed::vse::cursor_set_by_mouse_position(), blender::ed::space_node::cut_links_exec(), dopesheet_select_channel_invoke(), ED_mask_mouse_pos(), ED_outliner_give_base_under_cursor(), ED_outliner_give_rna_under_cursor(), ED_space_image_color_sample(), ED_space_image_get_position(), file_attribute_column_type_find_isect(), file_box_select_find_last_selected(), file_highlight_set(), frame_from_event(), frame_from_event(), grab_clone_modal(), graphkeys_click_insert_invoke(), graphview_cursor_setprops(), image_sample_apply(), image_sample_line_exec(), image_view_zoom_in_invoke(), image_view_zoom_init(), image_view_zoom_invoke(), image_view_zoom_out_invoke(), blender::ed::space_node::is_event_over_node_or_socket(), blender::ed::vse::load_data_init_from_operator(), blender::ed::vse::mouse_frame_side(), blender::ed::vse::MouseCoords::MouseCoords(), blender::ed::space_node::mute_links_exec(), nlaedit_strip_at_region_position(), nlatracks_mouseclick_invoke(), blender::ed::space_node::node_add_collection_invoke(), blender::ed::space_node::node_add_color_invoke(), blender::ed::space_node::node_add_group_asset_invoke(), blender::ed::space_node::node_add_group_input_node_invoke(), blender::ed::space_node::node_add_group_invoke(), blender::ed::space_node::node_add_image_invoke(), blender::ed::space_node::node_add_import_node_invoke(), blender::ed::space_node::node_add_material_invoke(), blender::ed::space_node::node_add_object_invoke(), blender::ed::space_node::node_circleselect_exec(), blender::ed::space_node::node_clipboard_paste_invoke(), blender::ed::space_node::node_cursor(), blender::ed::space_node::node_draw_space(), blender::ed::space_node::node_find_frame_to_attach(), blender::ed::space_node::node_group_enter_exit_invoke(), blender::ed::space_node::node_join_in_frame_invoke(), blender::ed::space_node::node_link_invoke(), blender::ed::space_node::node_link_modal(), blender::ed::space_node::node_mouse_select(), blender::ed::space_node::node_resize_invoke(), blender::ed::space_node::node_resize_modal(), blender::ed::space_node::node_swap_group_asset_invoke(), blender::ed::outliner::outliner_box_select_invoke(), blender::ed::outliner::outliner_drop_find(), blender::ed::outliner::outliner_drop_insert_find(), blender::ed::outliner::outliner_highlight_update_invoke(), blender::ed::outliner::outliner_id_delete_invoke(), blender::ed::outliner::outliner_id_remap_invoke(), blender::ed::outliner::outliner_item_do_activate_from_cursor(), blender::ed::outliner::outliner_item_drag_drop_invoke(), blender::ed::outliner::outliner_item_openclose_invoke(), blender::ed::outliner::outliner_item_openclose_modal(), blender::ed::outliner::outliner_item_rename_find_hovered(), blender::ed::outliner::outliner_lib_reload_invoke(), blender::ed::outliner::outliner_lib_relocate_invoke(), blender::ed::outliner::outliner_operation_invoke(), paint_2d_stroke(), paint_2d_transform_mouse(), paintcurve_cursor_invoke(), select_invoke(), blender::ed::vse::sequencer_box_select_invoke(), blender::ed::vse::sequencer_clipboard_paste_exec(), blender::ed::vse::sequencer_file_drop_channel_frame_set(), blender::ed::vse::sequencer_main_cursor(), sequencer_sample_apply(), blender::ed::vse::sequencer_select_linked_pick_invoke(), blender::ed::vse::sequencer_set_2d_cursor_invoke(), sequencer_skip_for_handle_tweak(), blender::ed::vse::sequencer_slip_invoke(), blender::ed::vse::sequencer_slip_modal(), blender::ed::vse::sequencer_split_invoke(), blender::ed::vse::sequencer_text_cursor_set_invoke(), stitch_select(), blender::ed::vse::strip_select_from_preview(), blender::ed::vse::strip_under_mouse_get(), blender::ed::transform::transform_convert_frame_side_dir_get(), blender::ed::vse::update_overlay_strip_position_data(), uv_circle_select_exec(), uv_rip_invoke(), uv_sculpt_stroke_apply(), uv_sculpt_stroke_init(), uv_select_edge_ring_invoke(), uv_select_invoke(), uv_select_linked_internal(), uv_select_loop_invoke(), uv_set_2d_cursor_invoke(), uv_shortest_path_pick_invoke(), view_zoomdrag_invoke(), view_zoomin_invoke(), view_zoomout_invoke(), and blender::ed::vse::vse_circle_select_exec().
Definition at line 1675 of file view2d.cc.
References BLI_rctf_size_x(), BLI_rctf_size_y(), BLI_rcti_size_x(), BLI_rcti_size_y(), View2D::cur, float, View2D::mask, rctf::xmax, rctf::xmin, rcti::xmin, rctf::ymax, rctf::ymin, and rcti::ymin.
Referenced by box_select_graph_exec(), blender::ed::space_node::do_lasso_select_node(), ed_marker_box_select_exec(), find_file_mouse_rect(), image_view_zoom_border_exec(), initialize_box_select_coords(), blender::ed::space_node::node_box_select_exec(), blender::ed::outliner::outliner_box_select_exec(), blender::ed::space_node::viewer_linking::position_viewer_node(), region_select_action_keys(), render_border_exec(), blender::ed::vse::sequencer_box_select_exec(), blender::ed::vse::sequencer_retiming_box_select_exec(), ui_but_rect_to_view(), uv_box_select_exec(), uv_custom_region_set_exec(), view_borderzoom_exec(), and blender::ed::vse::view_ghost_border_exec().
Definition at line 1657 of file view2d.cc.
References BLI_rctf_size_x(), BLI_rcti_size_x(), View2D::cur, View2D::mask, x, rctf::xmin, and rcti::xmin.
Referenced by actkeys_find_key_in_list_element(), actkeys_select_leftright_invoke(), draw_horizontal_scale_indicators(), ed_marker_select(), ED_region_overlap_isect_x(), ED_region_overlap_isect_x_with_margin(), blender::ed::spreadsheet::find_hovered_column(), blender::ed::spreadsheet::find_hovered_column_edge(), frame_from_event(), get_snap_threshold(), graphkeys_select_leftright_invoke(), nlaedit_select_leftright_invoke(), nlaedit_strip_at_region_position(), previewrange_define_exec(), region_position_is_over_marker(), blender::ed::spreadsheet::reorder_columns_invoke(), blender::ed::spreadsheet::reorder_columns_modal(), blender::ed::transform::seq_snap_threshold_get_view_distance(), blender::ed::vse::sequencer_select_side_of_frame(), and UI_view2d_region_to_view().
Definition at line 1662 of file view2d.cc.
References BLI_rctf_size_y(), BLI_rcti_size_y(), View2D::cur, View2D::mask, y, rctf::ymin, and rcti::ymin.
Referenced by blender::ed::vse::draw_cache_view(), draw_vertical_scale_indicators(), ED_region_overlap_isect_y(), ED_region_overlap_isect_y_with_margin(), blender::ed::outliner::outliner_item_drag_element_find(), blender::ed::vse::sequencer_rename_channel_invoke(), and UI_view2d_region_to_view().
Calculate the scale per-axis of the drawing-area
Is used to inverse correct drawing of icons, etc. that need to follow view but not be affected by scale
| r_x,r_y | scale on each axis |
Definition at line 1912 of file view2d.cc.
References UI_view2d_scale_get_x(), and UI_view2d_scale_get_y().
Referenced by blender::ed::transform::createTransGraphEditData(), draw_fcurve_samples(), draw_tracks_motion_and_error_curves(), ED_markers_draw(), ED_mask_pixelspace_factor(), ED_uvedit_nearest_uv_multi(), blender::ed::space_node::node_draw_collapsed(), and blender::ed::space_node::node_draw_zones_and_frames().
Same as UI_view2d_scale_get() - 1.0f / x, y.
Definition at line 1929 of file view2d.cc.
References BLI_rctf_size_x(), BLI_rctf_size_y(), BLI_rcti_size_x(), BLI_rcti_size_y(), View2D::cur, and View2D::mask.
Referenced by blender::ed::vse::draw_histogram(), blender::ed::vse::draw_vectorscope_graticule(), and ED_image_draw_cursor().
Definition at line 1921 of file view2d.cc.
References BLI_rctf_size_x(), BLI_rcti_size_x(), View2D::cur, and View2D::mask.
Referenced by blender::ed::vse::can_select_handle(), channel_ui_data_init(), draw_fcurve_curve(), draw_horizontal_scale_indicators(), ED_region_panel_category_gutter_calc_rect(), ED_region_panels_draw(), blender::ed::vse::inner_clickable_handle_size_get(), blender::ed::space_node::node_find_indicated_socket(), blender::ed::space_node::nodelink_get_draw_config(), region_position_is_over_marker(), blender::ed::vse::sequencer_slip_modal(), blender::ed::vse::strip_select_from_preview(), ui_update_flexible_spacing(), UI_view2d_scale_get(), uv_nearest_hit_init_dist_px(), uv_nearest_hit_init_max(), and blender::ed::vse::vse_circle_select_exec().
Definition at line 1925 of file view2d.cc.
References BLI_rctf_size_y(), BLI_rcti_size_y(), View2D::cur, and View2D::mask.
Referenced by ANIM_UI_get_first_channel_top(), blender::ed::vse::can_select_handle(), blender::ed::vse::draw_cache_background(), blender::ed::vse::draw_cache_final_iter_fn(), draw_vertical_scale_indicators(), blender::ed::vse::pick_strip_and_handle(), blender::ed::vse::strip_select_from_preview(), UI_view2d_scale_get(), uv_nearest_hit_init_dist_px(), uv_nearest_hit_init_max(), and blender::ed::vse::vse_circle_select_exec().
Get scroll-bar sizes of the current 2D view. The size will be zero if the view has its scroll-bars disabled.
| mapped | whether to use view2d_scroll_mapped which changes flags |
Definition at line 1887 of file view2d.cc.
References View2D::alpha_hor, View2D::alpha_vert, View2D::scroll, V2D_SCROLL_HANDLE_HEIGHT, V2D_SCROLL_HANDLE_WIDTH, V2D_SCROLL_HEIGHT, V2D_SCROLL_HORIZONTAL, V2D_SCROLL_HORIZONTAL_HANDLES, V2D_SCROLL_MIN_WIDTH, V2D_SCROLL_VERTICAL, V2D_SCROLL_VERTICAL_HANDLES, V2D_SCROLL_WIDTH, and view2d_scroll_mapped().
Referenced by ED_area_type_hud_ensure(), and view2d_masks().
Draw scroll-bars in the given 2D-region.
Definition at line 1504 of file view2d.cc.
References View2D::alpha_hor, View2D::alpha_vert, BLI_rcti_size_x(), BLI_rcti_size_y(), View2DScrollers::hor, View2DScrollers::hor_max, View2DScrollers::hor_min, uiWidgetColors::inner, uiWidgetColors::item, View2D::keepzoom, uiWidgetColors::outline, View2D::scroll, View2D::scroll_ui, state, TH_BACK, bTheme::tui, UI_draw_widget_scroll(), UI_GetTheme(), UI_GetThemeColor4ubv(), UI_SCROLL_ARROWS, UI_SCROLL_PRESSED, V2D_LOCKZOOM_X, V2D_LOCKZOOM_Y, V2D_SCROLL_H_ACTIVE, V2D_SCROLL_HANDLE_SIZE_HOTSPOT, V2D_SCROLL_HORIZONTAL, V2D_SCROLL_HORIZONTAL_HANDLES, V2D_SCROLL_MIN_ALPHA, V2D_SCROLL_V_ACTIVE, V2D_SCROLL_VERTICAL, V2D_SCROLL_VERTICAL_HANDLES, View2DScrollers::vert, View2DScrollers::vert_max, View2DScrollers::vert_min, view2d_scroll_mapped(), view2d_scrollers_calc(), ThemeUI::wcol_scroll, ThemeUI::widget_emboss, rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.
Referenced by action_main_region_draw_overlay(), console_main_region_draw(), dopesheet_region_draw(), blender::ed::spreadsheet::draw_spreadsheet_in_region(), blender::ed::vse::draw_timeline_seq_display(), ED_region_panels_draw(), file_main_region_draw(), graph_channel_region_draw(), graph_main_region_draw_overlay(), graph_region_draw(), info_main_region_draw(), nla_main_region_draw_overlay(), nla_track_region_draw(), blender::ed::space_node::node_draw_space(), blender::ed::outliner::outliner_main_region_draw(), and blender::ed::asset::shelf::region_draw().
| void UI_view2d_smooth_view | ( | const bContext * | C, |
| ARegion * | region, | ||
| const rctf * | cur, | ||
| int | smooth_viewtx ) |
Will start timer if appropriate. the arguments are the desired situation.
Definition at line 1638 of file view2d_ops.cc.
References BLI_rctf_compare(), C, CTX_wm_area(), CTX_wm_manager(), CTX_wm_screen(), CTX_wm_window(), View2D::cur, ED_region_tag_redraw_no_rebuild(), SmoothView2DStore::new_cur, SmoothView2DStore::orig_cur, View2D::smooth_timer, smooth_view_rect_to_fac(), View2D::sms, SmoothView2DStore::time_allowed, TIMER1, UI_view2d_curRect_changed(), UI_view2d_sync(), ARegion::v2d, V2D_LOCK_COPY, WM_event_timer_add(), and WM_event_timer_remove().
Referenced by ANIM_center_frame(), graphkeys_channel_view_pick_invoke(), graphkeys_view_selected_channels_exec(), graphkeys_viewall(), blender::ed::vse::sequencer_view_all_exec(), blender::ed::vse::sequencer_view_selected_exec(), blender::ed::space_node::space_node_view_flag(), view_borderzoom_exec(), view_curve_in_graph_editor_exec(), and blender::ed::vse::view_frame_preview_scope().
Called by menus to activate it, or by view2d operators to make sure 'related' views stay in synchrony.
Definition at line 865 of file view2d.cc.
References bScreen::areabase, View2D::cur, ED_region_tag_redraw_no_rebuild(), flag, View2D::flag, LISTBASE_FOREACH, ScrArea::regionbase, UI_view2d_area_supports_sync(), V2D_LOCK_COPY, V2D_VIEWSYNC_AREA_VERTICAL, V2D_VIEWSYNC_SCREEN_TIME, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by actkeys_viewall(), clip_draw_dopesheet_channels(), draw_channel_names(), draw_nla_track_list(), edge_pan_apply_delta(), nlaedit_viewall(), reset_exec(), scene_range_frame_exec(), scroller_activate_apply(), blender::ed::vse::sequencer_view_all_preview_exec(), UI_view2d_edge_pan_cancel(), UI_view2d_smooth_view(), view2d_smoothview_invoke(), view_pan_apply_ex(), view_zoomdrag_apply(), and view_zoomstep_apply_ex().
| char char char char void UI_view2d_text_cache_add | ( | View2D * | v2d, |
| float | x, | ||
| float | y, | ||
| const char * | str, | ||
| size_t | str_len, | ||
| const unsigned char | col[4] ) |
Cached text drawing in v2d, to allow pixel-aligned draw as post process.
Definition at line 2082 of file view2d.cc.
References BLI_assert, BLI_LINKS_PREPEND, BLI_memarena_alloc(), BLI_memarena_new(), col, View2DString::col, g_v2d_strings, g_v2d_strings_arena, MEM_SIZE_OPTIMAL, View2DString::mval, View2DString::pack, View2DString::rect, str, View2DString::str, UI_view2d_view_to_region_clip(), x, and y.
Referenced by blender::ed::vse::add_vertical_line(), blender::ed::vse::draw_handle_transform_text(), blender::ed::vse::draw_vectorscope_graticule(), blender::ed::vse::draw_waveform_graticule(), nla_draw_strip_frames_text(), and blender::ed::vse::retime_speed_text_draw().
| void UI_view2d_text_cache_add_rectf | ( | View2D * | v2d, |
| const rctf * | rect_view, | ||
| const char * | str, | ||
| size_t | str_len, | ||
| const unsigned char | col[4] ) |
No clip (yet).
Definition at line 2112 of file view2d.cc.
References BLI_assert, BLI_LINKS_PREPEND, BLI_memarena_alloc(), BLI_memarena_new(), col, View2DString::col, g_v2d_strings, g_v2d_strings_arena, MEM_SIZE_OPTIMAL, View2DString::mval, View2DString::pack, View2DString::rect, str, View2DString::str, UI_view2d_view_to_region_rcti_clip(), rcti::xmin, and rcti::ymin.
Referenced by blender::ed::vse::draw_seq_text_overlay(), blender::ed::vse::draw_strip_in_view(), and nla_draw_strip_text().
| void UI_view2d_text_cache_draw | ( | ARegion * | region | ) |
Definition at line 2142 of file view2d.cc.
References BLF_CLIPPING, BLF_clipping(), BLF_color4ubv(), BLF_default(), BLF_disable(), BLF_draw_default(), BLF_DRAW_STR_DUMMY_MAX, BLF_enable(), BLF_height(), BLF_set_default(), BLI_memarena_free(), BLI_rcti_size_x(), BLI_rcti_size_y(), ceil, View2DString::col, g_v2d_strings, g_v2d_strings_arena, View2DString::mval, View2DString::next, View2DString::pack, View2DString::rect, View2DString::str, View2DString::ub, wmOrtho2_region_pixelspace(), rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.
Referenced by blender::ed::vse::draw_histogram(), blender::ed::vse::draw_seq_strips(), blender::ed::vse::draw_strip_in_view(), blender::ed::vse::draw_vectorscope_graticule(), blender::ed::vse::draw_waveform_graticule(), and nla_main_region_draw().
| void UI_view2d_totRect_set | ( | View2D * | v2d, |
| int | width, | ||
| int | height ) |
Definition at line 1036 of file view2d.cc.
References view2d_totRect_set_resize().
Referenced by console_textview_update_rect(), ED_region_header_layout(), ED_region_panels_layout_ex(), file_calc_previews(), info_textview_update_rect(), blender::ed::outliner::outliner_update_viewable_area(), blender::ed::vse::preview_draw_begin(), blender::ed::asset::shelf::region_layout(), and blender::ed::spreadsheet::update_view2d_tot_rect().
| void UI_view2d_view_ortho | ( | const View2D * | v2d | ) |
Set view matrices to use 'cur' rect as viewing frame for View2D drawing.
Definition at line 1095 of file view2d.cc.
References BLI_rctf_size_x(), BLI_rctf_size_y(), BLI_rctf_translate(), BLI_rcti_size_x(), BLI_rcti_size_y(), View2D::cur, eps, View2D::flag, floorf, View2D::mask, V2D_PIXELOFS_X, V2D_PIXELOFS_Y, view2d_map_cur_using_mask(), wmOrtho2(), rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by action_channel_region_draw(), action_main_region_draw(), clip_channels_region_draw(), clip_draw_dopesheet_main(), clip_draw_graph(), console_main_region_draw(), dopesheet_region_draw(), blender::ed::vse::draw_channels(), blender::ed::vse::draw_icon_centered(), blender::ed::outliner::draw_outliner(), blender::ed::vse::draw_seq_strips(), blender::ed::vse::draw_seq_timeline_channels(), blender::ed::vse::draw_timeline_seq(), blender::ed::vse::draw_timeline_seq_display(), ED_region_header_layout(), ED_region_panels_draw(), ED_region_panels_layout_ex(), file_main_region_draw(), graph_channel_region_draw(), graph_main_region_draw(), graph_region_draw(), hud_region_draw(), image_main_region_draw(), info_main_region_draw(), nla_main_region_draw(), nla_track_region_draw(), blender::ed::space_node::node_draw_space(), blender::ed::vse::preview_draw_begin(), blender::ed::asset::shelf::region_draw(), region_draw_blocks_in_view2d(), blender::ed::asset::shelf::region_layout(), script_main_region_draw(), blender::ed::vse::sequencer_retiming_speed_draw(), blender::ed::space_node::snode_setup_v2d(), and view2d_draw_lines_internal().
Set view matrices to only use one axis of 'cur' only
| xaxis | if non-zero, only use cur x-axis, otherwise use cur-yaxis (mostly this will be used for x). |
Definition at line 1136 of file view2d.cc.
References view2d_map_cur_using_mask(), ARegion::winx, ARegion::winy, wmOrtho2(), rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by action_main_region_draw(), action_main_region_draw_overlay(), blender::ed::vse::draw_timeline_markers(), graph_main_region_draw(), and nla_main_region_draw().
| void UI_view2d_view_restore | ( | const bContext * | C | ) |
Restore view matrices after drawing.
Definition at line 1162 of file view2d.cc.
References BLI_rcti_size_x(), BLI_rcti_size_y(), C, CTX_wm_region(), GPU_matrix_identity_set(), ARegion::winrct, and wmOrtho2().
Referenced by action_channel_region_draw(), action_main_region_draw(), clip_channels_region_draw(), clip_main_region_draw(), console_main_region_draw(), dopesheet_region_draw(), blender::ed::vse::draw_channels(), blender::ed::vse::draw_icon_centered(), blender::ed::vse::draw_timeline_seq_display(), ED_region_clear(), ED_region_header_layout(), ED_region_panels_draw(), file_main_region_draw(), graph_channel_region_draw(), graph_main_region_draw(), graph_region_draw(), hud_region_layout(), image_main_region_draw(), info_main_region_draw(), nla_main_region_draw(), nla_track_region_draw(), blender::ed::space_node::node_draw_space(), blender::ed::outliner::outliner_main_region_draw(), blender::ed::vse::preview_draw_end(), region_clear_fully_transparent(), blender::ed::asset::shelf::region_draw(), region_draw_blocks_in_view2d(), script_main_region_draw(), blender::ed::vse::sequencer_draw_gpencil_overlay(), and blender::ed::vse::sequencer_preview_draw_overlays().
| void UI_view2d_view_to_region | ( | const View2D * | v2d, |
| float | x, | ||
| float | y, | ||
| int * | r_region_x, | ||
| int * | r_region_y ) |
Convert from 2d-view space to screen/region space
Definition at line 1723 of file view2d.cc.
References BLI_rctf_size_x(), BLI_rctf_size_y(), BLI_rcti_size_x(), BLI_rcti_size_y(), clamp_float_to_int(), View2D::cur, View2D::mask, x, rctf::xmin, rcti::xmin, y, rctf::ymin, and rcti::ymin.
Referenced by blender::draw::overlay::Cursor::begin_sync(), blender::ed::vse::coords_region_view_align(), blender::ed::vse::draw_cursor_2d(), draw_movieclip_buffer(), draw_movieclip_muted(), draw_render_info(), draw_stabilization_border(), ED_clip_point_stable_pos(), ED_clip_point_stable_pos__reverse(), ED_image_mouse_pos(), ED_image_point_pos(), ED_image_point_pos__reverse(), ED_mask_draw_region(), ED_region_grid_draw(), image_main_region_draw(), and blender::ed::transform::projectIntViewEx().
| bool UI_view2d_view_to_region_clip | ( | const View2D * | v2d, |
| float | x, | ||
| float | y, | ||
| int * | r_region_x, | ||
| int * | r_region_y ) |
Convert from 2d-View space to screen/region space
Definition at line 1702 of file view2d.cc.
References BLI_rctf_size_x(), BLI_rctf_size_y(), BLI_rcti_size_x(), BLI_rcti_size_y(), View2D::cur, View2D::mask, V2D_IS_CLIPPED, x, rctf::xmin, rcti::xmin, y, rctf::ymin, and rcti::ymin.
Referenced by blender::ed::vse::do_lasso_select_is_origin_inside(), do_lasso_select_mesh_uv_is_point_inside(), blender::ed::space_node::do_lasso_select_node(), blender::ed::vse::do_lasso_select_timeline(), gpencil_point_to_xy(), mouse_select_knot(), nearest_fcurve_vert_store(), and UI_view2d_text_cache_add().
| void UI_view2d_view_to_region_fl | ( | const View2D * | v2d, |
| float | x, | ||
| float | y, | ||
| float * | r_region_x, | ||
| float * | r_region_y ) |
Definition at line 1739 of file view2d.cc.
References BLI_rctf_size_x(), BLI_rctf_size_y(), BLI_rcti_size_x(), BLI_rcti_size_y(), View2D::cur, View2D::mask, x, rctf::xmin, rcti::xmin, y, rctf::ymin, and rcti::ymin.
Referenced by brush_painter_2d_tex_mapping(), clip_main_region_draw(), draw_distortion(), draw_tracking_tracks(), blender::ed::transform::drawSnapping(), ED_uvedit_nearest_uv_multi(), and blender::ed::transform::gizmo2d_origin_to_region().
Definition at line 1808 of file view2d.cc.
References BLI_rctf_rcti_copy(), BLI_rctf_transform_calc_m4_pivot_min(), View2D::cur, mask(), View2D::mask, and unit_m4().
Referenced by blender::ed::transform::gizmo2d_xform_draw_prepare(), blender::ed::transform::EdgeSlideData::update_proj_mat(), and blender::ed::transform::VertSlideData::update_proj_mat().
Definition at line 1786 of file view2d.cc.
References BLI_rctf_size_x(), BLI_rctf_size_y(), BLI_rcti_size_x(), BLI_rcti_size_y(), clamp_rctf_to_rcti(), View2D::cur, float, View2D::mask, rctf::xmax, rctf::xmin, rcti::xmin, rctf::ymax, rctf::ymin, and rcti::ymin.
Referenced by draw_image_uv_custom_region(), and ui_searchbox_region_layout_fn().
| bool UI_view2d_view_to_region_rcti_clip | ( | const View2D * | v2d, |
| const rctf * | rect_src, | ||
| rcti * | rect_dst ) |
Definition at line 1816 of file view2d.cc.
References BLI_assert, BLI_rctf_size_x(), BLI_rctf_size_y(), BLI_rcti_size_x(), BLI_rcti_size_y(), clamp_rctf_to_rcti(), View2D::cur, float, View2D::mask, V2D_IS_CLIPPED, rctf::xmax, rcti::xmax, rctf::xmin, rcti::xmin, rctf::ymax, rcti::ymax, rctf::ymin, and rcti::ymin.
Referenced by UI_view2d_text_cache_add_rectf().
| bool UI_view2d_view_to_region_segment_clip | ( | const View2D * | v2d, |
| const float | xy_a[2], | ||
| const float | xy_b[2], | ||
| int | r_region_a[2], | ||
| int | r_region_b[2] ) |
Definition at line 1751 of file view2d.cc.
References BLI_rctf_isect_segment(), BLI_rctf_size_x(), BLI_rctf_size_y(), BLI_rcti_size_x(), BLI_rcti_size_y(), View2D::cur, View2D::mask, V2D_IS_CLIPPED, rctf::xmax, rctf::xmin, rcti::xmin, rctf::ymax, rctf::ymin, and rcti::ymin.
Referenced by do_lasso_select_mesh_uv_is_edge_inside().
Definition at line 1691 of file view2d.cc.
References BLI_rctf_size_x(), BLI_rcti_size_x(), View2D::cur, View2D::mask, x, rctf::xmin, and rcti::xmin.
Referenced by azone_clipped_rect_calc(), blender::ed::transform::calculateCenterCursor2D(), draw_current_frame(), draw_horizontal_scale_indicators(), blender::ed::vse::frame_width_pixelspace_get(), blender::ed::vse::mouse_over_key_get_from_strip(), blender::ed::vse::pixels_to_view_width(), blender::ed::vse::retime_key_draw(), blender::ed::vse::retiming_fake_key_frame_clicked(), blender::ed::vse::sequencer_retiming_draw_continuity(), blender::ed::vse::strip_end_screenspace_get(), and blender::ed::vse::strip_start_screenspace_get().
Definition at line 1696 of file view2d.cc.
References BLI_rctf_size_y(), BLI_rcti_size_y(), View2D::cur, View2D::mask, y, rctf::ymin, and rcti::ymin.
Referenced by azone_clipped_rect_calc(), blender::ed::transform::calculateCenterCursor2D(), blender::ed::vse::channel_height_pixelspace_get(), draw_vertical_scale_indicators(), blender::ed::vse::pixels_to_view_height(), blender::ed::vse::strip_box_get(), and ui_searchbox_region_layout_fn().
| void UI_view2d_zoom_cache_reset | ( | ) |
Definition at line 1041 of file view2d.cc.
References BLF_cache_clear(), and G.
Referenced by reset_exec(), view2d_smoothview_invoke(), view_zoomdrag_exit(), view_zoomstep_exit(), and wm_file_read_pre().
| void VIEW2D_GGT_navigate_impl | ( | wmGizmoGroupType * | gzgt, |
| const char * | idname ) |
Caller defines the name for gizmo group.
Definition at line 260 of file view2d_gizmo_navigate.cc.
References wmGizmoGroupType::draw_prepare, wmGizmoGroupType::flag, wmGizmoGroupType::idname, wmGizmoGroupType::name, wmGizmoGroupType::poll, wmGizmoGroupType::setup, WIDGETGROUP_navigate_draw_prepare(), WIDGETGROUP_navigate_poll(), WIDGETGROUP_navigate_setup(), WM_GIZMOGROUPTYPE_DRAW_MODAL_ALL, WM_GIZMOGROUPTYPE_PERSISTENT, and WM_GIZMOGROUPTYPE_SCALE.
Referenced by CLIP_GGT_navigate(), IMAGE_GGT_navigate(), and blender::ed::vse::SEQUENCER_GGT_navigate().