Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/object/object_modes.c
| Context not available. | |||||
| * actual mode switching logic is per-object type. | * actual mode switching logic is per-object type. | ||||
| */ | */ | ||||
| #include "DNA_gpencil_types.h" | |||||
| #include "DNA_object_types.h" | #include "DNA_object_types.h" | ||||
| #include "DNA_scene_types.h" | #include "DNA_scene_types.h" | ||||
| #include "DNA_workspace_types.h" | #include "DNA_workspace_types.h" | ||||
| Context not available. | |||||
| return "PARTICLE_OT_particle_edit_toggle"; | return "PARTICLE_OT_particle_edit_toggle"; | ||||
| if (mode == OB_MODE_POSE) | if (mode == OB_MODE_POSE) | ||||
| return "OBJECT_OT_posemode_toggle"; | return "OBJECT_OT_posemode_toggle"; | ||||
| if (mode == OB_MODE_GPENCIL) | if (mode == OB_MODE_GPENCIL_EDIT) | ||||
| return "GPENCIL_OT_editmode_toggle"; | return "GPENCIL_OT_editmode_toggle"; | ||||
| if (mode == OB_MODE_GPENCIL_PAINT) | |||||
| return "GPENCIL_OT_paintmode_toggle"; | |||||
| if (mode == OB_MODE_GPENCIL_SCULPT) | |||||
| return "GPENCIL_OT_sculptmode_toggle"; | |||||
| if (mode == OB_MODE_GPENCIL_WEIGHT) | |||||
| return "GPENCIL_OT_weightmode_toggle"; | |||||
| return NULL; | return NULL; | ||||
| } | } | ||||
| Context not available. | |||||
| if (ob) { | if (ob) { | ||||
| if (mode == OB_MODE_OBJECT) | if (mode == OB_MODE_OBJECT) | ||||
| return true; | return true; | ||||
| else if (mode == OB_MODE_GPENCIL) | |||||
| return true; /* XXX: assume this is the case for now... */ | |||||
| switch (ob->type) { | switch (ob->type) { | ||||
| case OB_MESH: | case OB_MESH: | ||||
| Context not available. | |||||
| if (mode & (OB_MODE_EDIT | OB_MODE_POSE)) | if (mode & (OB_MODE_EDIT | OB_MODE_POSE)) | ||||
| return true; | return true; | ||||
| break; | break; | ||||
| case OB_GPENCIL: | |||||
| if (mode & (OB_MODE_EDIT | OB_MODE_GPENCIL_EDIT | OB_MODE_GPENCIL_PAINT | | |||||
| OB_MODE_GPENCIL_SCULPT | OB_MODE_GPENCIL_WEIGHT)) | |||||
| { | |||||
| return true; | |||||
| } | |||||
| break; | |||||
| } | } | ||||
| } | } | ||||
| Context not available. | |||||