Blender
V3.3
|
#include "MEM_guardedalloc.h"
#include "DNA_object_types.h"
#include "BLI_math.h"
#include "BLI_string.h"
#include "BLT_translation.h"
#include "BKE_context.h"
#include "BKE_editmesh.h"
#include "BKE_global.h"
#include "BKE_layer.h"
#include "BKE_unit.h"
#include "RNA_access.h"
#include "RNA_define.h"
#include "WM_api.h"
#include "WM_types.h"
#include "UI_interface.h"
#include "ED_mesh.h"
#include "ED_numinput.h"
#include "ED_screen.h"
#include "ED_space_api.h"
#include "ED_transform.h"
#include "ED_util.h"
#include "ED_view3d.h"
#include "mesh_intern.h"
Go to the source code of this file.
Classes | |
struct | InsetObjectStore |
struct | InsetData |
Functions | |
static void | edbm_inset_update_header (wmOperator *op, bContext *C) |
static bool | edbm_inset_init (bContext *C, wmOperator *op, const bool is_modal) |
static void | edbm_inset_exit (bContext *C, wmOperator *op) |
static void | edbm_inset_cancel (bContext *C, wmOperator *op) |
static bool | edbm_inset_calc (wmOperator *op) |
static int | edbm_inset_exec (bContext *C, wmOperator *op) |
static int | edbm_inset_invoke (bContext *C, wmOperator *op, const wmEvent *event) |
static int | edbm_inset_modal (bContext *C, wmOperator *op, const wmEvent *event) |
void | MESH_OT_inset (wmOperatorType *ot) |
|
static |
Definition at line 230 of file editmesh_inset.c.
References BKE_editmesh_from_object(), BMEditMesh::bm, BM_ELEM_HIDDEN, BM_ELEM_SELECT, BM_FACE, BMO_op_exec(), BMO_slot_buffer_from_enabled_hflag(), BMO_slot_buffer_hflag_enable(), wmOperator::customdata, Object::data, EDBM_flag_disable_all(), EDBM_op_finish(), EDBM_op_init(), EDBM_redo_state_restore(), EDBM_update(), InsetData::is_modal, InsetObjectStore::mesh_backup, InsetObjectStore::ob, InsetData::ob_store, InsetData::ob_store_len, wmOperator::ptr, RNA_boolean_get(), RNA_float_get(), BMOperator::slots_in, and BMOperator::slots_out.
Referenced by edbm_inset_exec(), edbm_inset_invoke(), and edbm_inset_modal().
|
static |
Definition at line 205 of file editmesh_inset.c.
References BKE_editmesh_from_object(), C, CTX_wm_region(), wmOperator::customdata, Object::data, ED_region_tag_redraw(), edbm_inset_exit(), EDBM_redo_state_restore_and_free(), EDBM_update(), InsetData::is_modal, InsetObjectStore::mesh_backup, InsetObjectStore::ob, InsetData::ob_store, and InsetData::ob_store_len.
Referenced by edbm_inset_modal(), and MESH_OT_inset().
|
static |
Definition at line 321 of file editmesh_inset.c.
References C, edbm_inset_calc(), edbm_inset_exit(), edbm_inset_init(), OPERATOR_CANCELLED, and OPERATOR_FINISHED.
Referenced by MESH_OT_inset().
|
static |
Definition at line 181 of file editmesh_inset.c.
References blender::compositor::area(), C, CTX_wm_area(), CTX_wm_region(), wmOperator::customdata, InsetData::draw_handle_pixel, ED_area_status_text(), ED_region_draw_cb_exit(), EDBM_redo_state_free(), G, InsetData::is_modal, MEM_SAFE_FREE, InsetObjectStore::mesh_backup, NULL, InsetData::ob_store, InsetData::ob_store_len, and ARegion::type.
Referenced by edbm_inset_cancel(), edbm_inset_exec(), and edbm_inset_modal().
|
static |
Definition at line 115 of file editmesh_inset.c.
References B_UNIT_LENGTH, BKE_editmesh_from_object(), BKE_view_layer_array_from_objects_in_edit_mode_unique_data, BMEditMesh::bm, C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_region(), CTX_wm_view3d(), wmOperator::customdata, InsetData::draw_handle_pixel, ED_region_draw_cb_activate(), ED_region_draw_mouse_line_cb(), EDBM_redo_state_store(), G, G_TRANSFORM_EDIT, NumInput::idx_max, initNumInput(), InsetData::is_modal, mat4_to_scale(), max_ff(), InsetData::max_obj_scale, InsetData::mcenter, MEM_freeN, MEM_malloc_arrayN, MEM_mallocN, InsetObjectStore::mesh_backup, InsetData::modify_depth, InsetData::num_input, InsetObjectStore::ob, InsetData::ob_store, InsetData::ob_store_len, Object::obmat, InsetData::old_depth, InsetData::old_thickness, wmOperator::ptr, REGION_DRAW_POST_PIXEL, RNA_float_set(), scene, InsetData::shift, InsetData::shift_amount, UnitSettings::system, BMesh::totvertsel, ARegion::type, Scene::unit, NumInput::unit_sys, and NumInput::unit_type.
Referenced by edbm_inset_exec(), and edbm_inset_invoke().
|
static |
Definition at line 336 of file editmesh_inset.c.
References C, calculateTransformCenter(), CTX_wm_region_view3d(), wmOperator::customdata, ED_view3d_pixel_size(), edbm_inset_calc(), edbm_inset_init(), edbm_inset_update_header(), InsetData::initial_length, InsetData::launch_event, len_v2(), InsetData::mcenter, OPERATOR_CANCELLED, OPERATOR_RUNNING_MODAL, InsetData::pixel_size, wmEvent::type, V3D_AROUND_CENTER_MEDIAN, WM_event_add_modal_handler(), and WM_userdef_event_type_from_keymap_type().
Referenced by MESH_OT_inset().
|
static |
Definition at line 370 of file editmesh_inset.c.
References applyNumInput(), C, wmOperator::customdata, edbm_inset_calc(), edbm_inset_cancel(), edbm_inset_exit(), edbm_inset_update_header(), EVT_BKEY, EVT_ESCKEY, EVT_IKEY, EVT_LEFTCTRLKEY, EVT_LEFTSHIFTKEY, EVT_OKEY, EVT_PADENTER, EVT_RETKEY, EVT_RIGHTCTRLKEY, EVT_RIGHTSHIFTKEY, handleNumInput(), hasNumInput(), InsetData::initial_length, KM_PRESS, KM_RELEASE, InsetData::launch_event, LEFTMOUSE, len_v2(), max_ff(), InsetData::max_obj_scale, InsetData::mcenter, InsetData::modify_depth, MOUSEMOVE, InsetData::num_input, InsetData::old_depth, InsetData::old_thickness, OPERATOR_CANCELLED, OPERATOR_FINISHED, OPERATOR_RUNNING_MODAL, InsetData::pixel_size, wmOperator::ptr, RIGHTMOUSE, RNA_boolean_get(), RNA_boolean_set(), RNA_float_get(), RNA_float_set(), InsetData::shift, InsetData::shift_amount, wmEvent::type, and wmEvent::val.
Referenced by MESH_OT_inset().
|
static |
Definition at line 67 of file editmesh_inset.c.
References blender::compositor::area(), B_UNIT_LENGTH, BKE_unit_value_as_string(), BLI_snprintf(), C, CTX_data_scene(), CTX_wm_area(), wmOperator::customdata, ED_area_status_text(), hasNumInput(), InsetData::modify_depth, InsetData::num_input, NUM_STR_REP_LEN, outputNumInput(), wmOperator::ptr, RNA_boolean_get(), RNA_float_get(), str, TIP_, UI_MAX_DRAW_STR, Scene::unit, and WM_bool_as_string().
Referenced by edbm_inset_invoke(), and edbm_inset_modal().
void MESH_OT_inset | ( | wmOperatorType * | ot | ) |
Definition at line 567 of file editmesh_inset.c.
References wmOperatorType::cancel, wmOperatorType::description, ED_operator_editmesh(), edbm_inset_cancel(), edbm_inset_exec(), edbm_inset_invoke(), edbm_inset_modal(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::modal, wmOperatorType::name, OPTYPE_BLOCKING, OPTYPE_GRAB_CURSOR_XY, OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, PROP_HIDDEN, PROP_SKIP_SAVE, RNA_def_boolean(), RNA_def_float_distance(), RNA_def_property_flag(), RNA_def_property_ui_range(), and wmOperatorType::srna.
Referenced by ED_operatortypes_mesh().