Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/space_view3d/view3d_header.c
| Show First 20 Lines • Show All 256 Lines • ▼ Show 20 Lines | static void do_view3d_header_buttons(bContext *C, void *UNUSED(arg), int event) | ||||
| } | } | ||||
| } | } | ||||
| void uiTemplateEditModeSelection(uiLayout *layout, struct bContext *C) | void uiTemplateEditModeSelection(uiLayout *layout, struct bContext *C) | ||||
| { | { | ||||
| Object *obedit = CTX_data_edit_object(C); | Object *obedit = CTX_data_edit_object(C); | ||||
| uiBlock *block = uiLayoutGetBlock(layout); | uiBlock *block = uiLayoutGetBlock(layout); | ||||
| uiBlockSetHandleFunc(block, do_view3d_header_buttons, NULL); | UI_block_func_handle_set(block, do_view3d_header_buttons, NULL); | ||||
| if (obedit && (obedit->type == OB_MESH)) { | if (obedit && (obedit->type == OB_MESH)) { | ||||
| BMEditMesh *em = BKE_editmesh_from_object(obedit); | BMEditMesh *em = BKE_editmesh_from_object(obedit); | ||||
| uiLayout *row; | uiLayout *row; | ||||
| row = uiLayoutRow(layout, true); | row = uiLayoutRow(layout, true); | ||||
| block = uiLayoutGetBlock(row); | block = uiLayoutGetBlock(row); | ||||
| uiDefIconButBitS(block, TOG, SCE_SELECT_VERTEX, B_SEL_VERT, ICON_VERTEXSEL, | uiDefIconButBitS(block, UI_BTYPE_TOGGLE, SCE_SELECT_VERTEX, B_SEL_VERT, ICON_VERTEXSEL, | ||||
| 0, 0, UI_UNIT_X, UI_UNIT_Y, &em->selectmode, 1.0, 0.0, 0, 0, | 0, 0, UI_UNIT_X, UI_UNIT_Y, &em->selectmode, 1.0, 0.0, 0, 0, | ||||
| TIP_("Vertex select - Shift-Click for multiple modes, Ctrl-Click contracts selection")); | TIP_("Vertex select - Shift-Click for multiple modes, Ctrl-Click contracts selection")); | ||||
| uiDefIconButBitS(block, TOG, SCE_SELECT_EDGE, B_SEL_EDGE, ICON_EDGESEL, | uiDefIconButBitS(block, UI_BTYPE_TOGGLE, SCE_SELECT_EDGE, B_SEL_EDGE, ICON_EDGESEL, | ||||
| 0, 0, UI_UNIT_X, UI_UNIT_Y, &em->selectmode, 1.0, 0.0, 0, 0, | 0, 0, UI_UNIT_X, UI_UNIT_Y, &em->selectmode, 1.0, 0.0, 0, 0, | ||||
| TIP_("Edge select - Shift-Click for multiple modes, Ctrl-Click expands/contracts selection")); | TIP_("Edge select - Shift-Click for multiple modes, Ctrl-Click expands/contracts selection")); | ||||
| uiDefIconButBitS(block, TOG, SCE_SELECT_FACE, B_SEL_FACE, ICON_FACESEL, | uiDefIconButBitS(block, UI_BTYPE_TOGGLE, SCE_SELECT_FACE, B_SEL_FACE, ICON_FACESEL, | ||||
| 0, 0, UI_UNIT_X, UI_UNIT_Y, &em->selectmode, 1.0, 0.0, 0, 0, | 0, 0, UI_UNIT_X, UI_UNIT_Y, &em->selectmode, 1.0, 0.0, 0, 0, | ||||
| TIP_("Face select - Shift-Click for multiple modes, Ctrl-Click expands selection")); | TIP_("Face select - Shift-Click for multiple modes, Ctrl-Click expands selection")); | ||||
| } | } | ||||
| } | } | ||||
| void uiTemplateHeader3D(uiLayout *layout, struct bContext *C) | void uiTemplateHeader3D(uiLayout *layout, struct bContext *C) | ||||
| { | { | ||||
| bScreen *screen = CTX_wm_screen(C); | bScreen *screen = CTX_wm_screen(C); | ||||
| Show All 9 Lines | void uiTemplateHeader3D(uiLayout *layout, struct bContext *C) | ||||
| bool is_paint = false; | bool is_paint = false; | ||||
| int modeselect; | int modeselect; | ||||
| RNA_pointer_create(&screen->id, &RNA_SpaceView3D, v3d, &v3dptr); | RNA_pointer_create(&screen->id, &RNA_SpaceView3D, v3d, &v3dptr); | ||||
| RNA_pointer_create(&scene->id, &RNA_ToolSettings, ts, &toolsptr); | RNA_pointer_create(&scene->id, &RNA_ToolSettings, ts, &toolsptr); | ||||
| RNA_pointer_create(&scene->id, &RNA_Scene, scene, &sceneptr); | RNA_pointer_create(&scene->id, &RNA_Scene, scene, &sceneptr); | ||||
| block = uiLayoutGetBlock(layout); | block = uiLayoutGetBlock(layout); | ||||
| uiBlockSetHandleFunc(block, do_view3d_header_buttons, NULL); | UI_block_func_handle_set(block, do_view3d_header_buttons, NULL); | ||||
| /* other buttons: */ | /* other buttons: */ | ||||
| uiBlockSetEmboss(block, UI_EMBOSS); | UI_block_emboss_set(block, UI_EMBOSS); | ||||
| /* mode */ | /* mode */ | ||||
| if (ob) { | if (ob) { | ||||
| modeselect = ob->mode; | modeselect = ob->mode; | ||||
| is_paint = ELEM(ob->mode, OB_MODE_SCULPT, OB_MODE_VERTEX_PAINT, OB_MODE_WEIGHT_PAINT, OB_MODE_TEXTURE_PAINT); | is_paint = ELEM(ob->mode, OB_MODE_SCULPT, OB_MODE_VERTEX_PAINT, OB_MODE_WEIGHT_PAINT, OB_MODE_TEXTURE_PAINT); | ||||
| } | } | ||||
| else { | else { | ||||
| modeselect = OB_MODE_OBJECT; | modeselect = OB_MODE_OBJECT; | ||||
| ▲ Show 20 Lines • Show All 79 Lines • Show Last 20 Lines | |||||