41#include "RNA_prototypes.hh"
56 for (
int i = 0; i < path->
len; i++) {
70 for (
int i = 0; i < path->
len; i++) {
269#ifdef WITH_POINT_CLOUD
281 if (ob &&
ELEM(type, -1, ob->
type)) {
523static bool buttons_context_linestyle_pinnable(
const bContext *
C,
ViewLayer *view_layer)
593 if (buttons_context_linestyle_pinnable(
C, view_layer)) {
694 sbuts->
path = MEM_new<ButsContextPath>(
"ButsContextPath");
719 sbuts->
dataicon = ICON_OUTLINER_DATA_LIGHT;
748 if (
flag & (1 << i)) {
779 for (
int i = 0; i < path->
len; ++i) {
829 "texture_user_property",
835 "particle_system_editable",
848#ifdef WITH_POINT_CLOUD
860 if (sbuts && sbuts->
path ==
nullptr) {
945#ifdef WITH_POINT_CLOUD
980 int matnr = ob->
actcol - 1;
1202 for (
int i = 0; i < path->
len; i++) {
1212 ptr->type == &RNA_Scene)
1222 ptr->type == &RNA_ViewLayer)
1229 uiItemL(row,
"", ICON_RIGHTARROW);
1232 if (
ptr->data ==
nullptr) {
1244 if (name != namebuf) {
1262 "BUTTONS_OT_toggle_pin");
1283 if (path->
len == 0) {
1287 for (
int i = path->
len - 1; i >= 0; i--) {
1292 if (
ptr->type == &RNA_ParticleSystem &&
ptr->data) {
1300 if (
ptr->type == &RNA_Image &&
ptr->data) {
1305 if (
ptr->owner_id) {
1306 return ptr->owner_id;
Blender kernel action and pose functionality.
bPoseChannel * BKE_pose_channel_find_name(const bPose *pose, const char *name)
void CTX_data_dir_set(bContextDataResult *result, const char **dir)
bool CTX_data_equals(const char *member, const char *str)
void CTX_data_pointer_set(bContextDataResult *result, ID *id, StructRNA *type, void *data)
bool CTX_data_dir(const char *member)
SpaceProperties * CTX_wm_space_properties(const bContext *C)
ScrArea * CTX_wm_area(const bContext *C)
wmWindow * CTX_wm_window(const bContext *C)
@ CTX_RESULT_MEMBER_NOT_FOUND
Scene * CTX_data_scene(const bContext *C)
void CTX_data_pointer_set_ptr(bContextDataResult *result, const PointerRNA *ptr)
void BKE_view_layer_synced_ensure(const Scene *scene, ViewLayer *view_layer)
LayerCollection * BKE_view_layer_active_collection_get(ViewLayer *view_layer)
ViewLayer * BKE_view_layer_default_view(const Scene *scene)
Object * BKE_view_layer_active_object_get(const ViewLayer *view_layer)
Blender kernel freestyle line style functionality.
FreestyleLineStyle * BKE_linestyle_active_from_view_layer(struct ViewLayer *view_layer)
General operations, lookup, etc. for materials.
struct Material * BKE_object_material_get(struct Object *ob, short act)
ModifierData * BKE_modifiers_findby_type(const Object *ob, ModifierType type)
General operations, lookup, etc. for blender objects.
ModifierData * BKE_object_active_modifier(const Object *ob)
Paint * BKE_paint_get_active(Scene *sce, ViewLayer *view_layer)
Brush * BKE_paint_brush(Paint *paint)
struct ParticleSystem * psys_get_current(struct Object *ob)
void BLI_addtail(struct ListBase *listbase, void *vlink) ATTR_NONNULL(1)
#define STRNCPY(dst, src)
#define BLT_I18NCONTEXT_DEFAULT_BPYRNA
Object groups, one object can be in many groups at once.
@ FREESTYLE_CONTROL_EDITOR_MODE
@ eModifierType_Collision
@ eModifierType_DynamicPaint
#define OB_TYPE_SUPPORT_MATERIAL(_type)
@ BCONTEXT_BONE_CONSTRAINT
bool PE_poll(bContext *C)
bool ED_area_has_shared_border(ScrArea *a, ScrArea *b)
Read Guarded memory(de)allocation.
in reality light always falls off quadratically Particle Retrieve the data of the particle that spawned the object for example to give variation to multiple instances of an object Point Retrieve information about points in a point cloud Retrieve the edges of an object as it appears to Cycles topology will always appear triangulated Convert a blackbody temperature to an RGB value Normal Generate a perturbed normal from an RGB normal map image Typically used for faking highly detailed surfaces Generate an OSL shader from a file or text data block Image Sample an image file as a texture Gabor Generate Gabor noise Gradient Generate interpolated color and intensity values based on the input vector Magic Generate a psychedelic color texture Voronoi Generate Worley noise based on the distance to random points Typically used to generate textures such as or biological cells Brick Generate a procedural texture producing bricks Texture Retrieve multiple types of texture coordinates nTypically used as inputs for texture nodes Vector Convert a or normal between world
void uiItemL(uiLayout *layout, const char *name, int icon)
uiLayout * uiLayoutRow(uiLayout *layout, bool align)
void uiLayoutSetAlignment(uiLayout *layout, char alignment)
void uiItemLDrag(uiLayout *layout, PointerRNA *ptr, const char *name, int icon)
void uiItemSpacer(uiLayout *layout)
void uiLayoutSetEmboss(uiLayout *layout, eUIEmbossType emboss)
void uiItemO(uiLayout *layout, const char *name, int icon, const char *opname)
static bool buttons_context_path(const bContext *C, SpaceProperties *sbuts, ButsContextPath *path, int mainb, int flag)
static bool buttons_context_path_shaderfx(ButsContextPath *path)
static bool buttons_context_path_bone(ButsContextPath *path)
static bool buttons_context_path_scene(ButsContextPath *path)
static int set_pointer_type(ButsContextPath *path, bContextDataResult *result, StructRNA *type)
static bool buttons_context_path_data(ButsContextPath *path, int type)
const char * buttons_context_dir[]
int buttons_context(const bContext *C, const char *member, bContextDataResult *result)
void ED_buttons_set_context(const bContext *C, SpaceProperties *sbuts, PointerRNA *ptr, const int context)
static PointerRNA * get_pointer_type(ButsContextPath *path, StructRNA *type)
void buttons_context_compute(const bContext *C, SpaceProperties *sbuts)
void buttons_context_register(ARegionType *art)
static bool buttons_context_path_material(ButsContextPath *path)
static bool buttons_context_path_texture(const bContext *C, ButsContextPath *path, ButsContextTexture *ct)
static bool buttons_context_path_pose_bone(ButsContextPath *path)
static bool buttons_context_path_object(ButsContextPath *path)
static int buttons_shading_new_context(const bContext *C, int flag)
static bool buttons_context_path_particle(ButsContextPath *path)
bool ED_buttons_should_sync_with_outliner(const bContext *C, const SpaceProperties *sbuts, ScrArea *area)
static bool buttons_context_path_view_layer(ButsContextPath *path, wmWindow *win)
static bool buttons_context_path_linestyle(ButsContextPath *path, wmWindow *window)
static bool buttons_shading_context(const bContext *C, int mainb)
static bool is_pointer_in_path(ButsContextPath *path, PointerRNA *ptr)
static bool buttons_context_path_brush(const bContext *C, ButsContextPath *path)
static bool buttons_context_path_collection(const bContext *C, ButsContextPath *path, wmWindow *window)
static bool buttons_context_path_world(ButsContextPath *path)
ID * buttons_context_id_path(const bContext *C)
static void buttons_panel_context_draw(const bContext *C, Panel *panel)
static bool buttons_context_path_modifier(ButsContextPath *path)
static bool buttons_panel_context_poll(const bContext *C, PanelType *)
void MEM_freeN(void *vmemh)
void *(* MEM_callocN)(size_t len, const char *str)
bool RNA_struct_is_a(const StructRNA *type, const StructRNA *srna)
char * RNA_struct_name_get_alloc(PointerRNA *ptr, char *fixedbuf, int fixedlen, int *r_len)
int RNA_struct_ui_icon(const StructRNA *type)
PointerRNA RNA_pointer_create(ID *id, StructRNA *type, void *data)
PointerRNA RNA_id_pointer_create(ID *id)
_W64 unsigned int uintptr_t
struct ButsTextureUser * user
struct Collection * collection
void(* draw)(const bContext *C, Panel *panel)
char idname[BKE_ST_MAXNAME]
bool(* poll)(const bContext *C, PanelType *pt)
char translation_context[BKE_ST_MAXNAME]
char label[BKE_ST_MAXNAME]
struct Collection * master_collection
struct FreestyleConfig freestyle_config
struct EditBone * act_edbone
ViewLayer * WM_window_get_active_view_layer(const wmWindow *win)
Scene * WM_window_get_active_scene(const wmWindow *win)