Blender V5.0
ED_util.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2008 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
8
9#pragma once
10
11#include "WM_types.hh"
12
13struct Main;
14struct bContext;
15class WorkspaceStatus;
16
17namespace blender::bke::id {
18class IDRemapper;
19}
20
21/* `ed_util.cc` */
22
28void ED_editors_exit(Main *bmain, bool do_undo_system);
29
31 Object *ob,
32 bool for_render,
33 bool check_needs_flush);
35
39bool ED_editors_flush_edits_ex(Main *bmain, bool for_render, bool check_needs_flush);
40bool ED_editors_flush_edits(Main *bmain);
41
47void ED_spacedata_id_remap_single(ScrArea *area, SpaceLink *sl, ID *old_id, ID *new_id);
49 SpaceLink *sl,
50 const blender::bke::id::IDRemapper &mappings);
51
64
66
67/* Drawing */
68
72void ED_region_draw_mouse_line_cb(const bContext *C, ARegion *region, void *arg_info);
73
78 int x, int y, const ImBuf *ibuf, const rctf *frame, float zoomx, float zoomy);
79
80void ED_region_image_overlay_info_text_draw(const int render_size_x,
81 const int render_size_y,
82
83 const int viewer_size_x,
84 const int viewer_size_y,
85
86 const int draw_offset_x,
87 const int draw_offset_y);
88
90 int x, int y, const rcti *frame, float zoomx, float zoomy, float passepartout_alpha);
91
92/* Slider */
93
94struct tSlider;
96
101void ED_slider_init(tSlider *slider, const wmEvent *event);
105bool ED_slider_modal(tSlider *slider, const wmEvent *event);
106void ED_slider_destroy(bContext *C, tSlider *slider);
107
111void ED_slider_status_string_get(const tSlider *slider,
112 char *status_string,
113 size_t size_of_status_string);
114
116
117float ED_slider_factor_get(const tSlider *slider);
118void ED_slider_factor_set(tSlider *slider, float factor);
119
127
129void ED_slider_allow_overshoot_set(tSlider *slider, bool lower, bool upper);
130
135 float factor_bound_lower,
136 float factor_bound_upper);
137
138bool ED_slider_allow_increments_get(const tSlider *slider);
139void ED_slider_allow_increments_set(tSlider *slider, bool value);
140
141void ED_slider_mode_set(tSlider *slider, SliderMode mode);
143void ED_slider_unit_set(tSlider *slider, const char *unit);
144/* Set a name that will show next to the slider to indicate which property is modified currently.
145 * To clear, set to an empty string. */
146void ED_slider_property_label_set(tSlider *slider, const char *property_label);
147
148/* ************** XXX OLD CRUFT WARNING ************* */
149
155void apply_keyb_grid(
156 bool shift, bool ctrl, float *val, float fac1, float fac2, float fac3, int invert);
157
158/* where else to go ? */
160 const char *opname,
161 const char *id_name,
162 const char *abs_name,
163 const char *folder,
164 PackedFile *pf);
void ED_editors_exit(Main *bmain, bool do_undo_system)
Definition ed_util.cc:224
bool ED_editors_flush_edits_for_object(Main *bmain, Object *ob)
Definition ed_util.cc:315
void ED_spacedata_id_remap_single(ScrArea *area, SpaceLink *sl, ID *old_id, ID *new_id)
Definition ed_util.cc:474
void ED_slider_status_string_get(const tSlider *slider, char *status_string, size_t size_of_status_string)
Definition ed_draw.cc:515
blender::Vector< PointerRNA > ED_operator_single_id_from_context_as_vec(const bContext *C)
bool ED_editors_flush_edits_for_object_ex(Main *bmain, Object *ob, bool for_render, bool check_needs_flush)
Definition ed_util.cc:266
void ED_operatortypes_edutils()
void ED_slider_init(tSlider *slider, const wmEvent *event)
Definition ed_draw.cc:477
void ED_slider_allow_overshoot_set(tSlider *slider, bool lower, bool upper)
Definition ed_draw.cc:616
SliderMode
Definition ED_util.hh:95
@ SLIDER_MODE_PERCENT
Definition ED_util.hh:95
@ SLIDER_MODE_FLOAT
Definition ED_util.hh:95
void ED_region_image_metadata_draw(int x, int y, const ImBuf *ibuf, const rctf *frame, float zoomx, float zoomy)
Definition ed_draw.cc:1030
SliderMode ED_slider_mode_get(const tSlider *slider)
Definition ed_draw.cc:645
void ED_slider_unit_set(tSlider *slider, const char *unit)
Definition ed_draw.cc:650
bool ED_editors_flush_edits(Main *bmain)
Definition ed_util.cc:336
void ED_slider_mode_set(tSlider *slider, SliderMode mode)
Definition ed_draw.cc:640
void unpack_menu(bContext *C, const char *opname, const char *id_name, const char *abs_name, const char *folder, PackedFile *pf)
Definition ed_util.cc:368
void ED_region_image_render_region_draw(int x, int y, const rcti *frame, float zoomx, float zoomy, float passepartout_alpha)
Definition ed_draw.cc:982
void apply_keyb_grid(bool shift, bool ctrl, float *val, float fac1, float fac2, float fac3, int invert)
Definition ed_util.cc:343
void ED_slider_property_label_set(tSlider *slider, const char *property_label)
Definition ed_draw.cc:655
void ED_slider_destroy(bContext *C, tSlider *slider)
Definition ed_draw.cc:579
void ED_slider_allow_increments_set(tSlider *slider, bool value)
Definition ed_draw.cc:627
void ED_slider_increment_step_set(tSlider *slider, float increment_step)
Definition ed_draw.cc:606
tSlider * ED_slider_create(bContext *C)
Definition ed_draw.cc:433
void ED_region_image_overlay_info_text_draw(const int render_size_x, const int render_size_y, const int viewer_size_x, const int viewer_size_y, const int draw_offset_x, const int draw_offset_y)
Definition ed_draw.cc:942
void ED_editors_init_for_undo(Main *bmain)
Definition ed_util.cc:61
bool ED_slider_modal(tSlider *slider, const wmEvent *event)
Definition ed_draw.cc:482
void ED_spacedata_id_remap(ScrArea *area, SpaceLink *sl, const blender::bke::id::IDRemapper &mappings)
Definition ed_util.cc:464
void ED_slider_status_get(const tSlider *slider, WorkspaceStatus &status)
Definition ed_draw.cc:563
void ED_slider_factor_bounds_set(tSlider *slider, float factor_bound_lower, float factor_bound_upper)
Definition ed_draw.cc:632
bool ED_slider_allow_increments_get(const tSlider *slider)
Definition ed_draw.cc:622
bool ED_editors_flush_edits_ex(Main *bmain, bool for_render, bool check_needs_flush)
Definition ed_util.cc:320
void ED_region_draw_mouse_line_cb(const bContext *C, ARegion *region, void *arg_info)
Definition ed_draw.cc:662
void ED_editors_init(bContext *C)
Definition ed_util.cc:100
float ED_slider_factor_get(const tSlider *slider)
Definition ed_draw.cc:592
blender::Vector< PointerRNA > ED_operator_get_ids_from_context_as_vec(const bContext *C)
void ED_slider_factor_set(tSlider *slider, float factor)
Definition ed_draw.cc:597
#define C
Definition RandGen.cpp:29
#define pf(_x, _i)
Prefetch 64.
Definition gim_memory.h:48
CCL_NAMESPACE_BEGIN ccl_device float invert(const float color, const float factor)
Definition invert.h:11
const int status
Definition DNA_ID.h:414
float increment_step
Definition ed_draw.cc:85
std::string property_label
Definition ed_draw.cc:92
float factor
Definition ed_draw.cc:76