Blender  V3.3
Classes | Macros | Functions
editmesh_bisect.c File Reference
#include "MEM_guardedalloc.h"
#include "DNA_object_types.h"
#include "BLI_math.h"
#include "BLT_translation.h"
#include "BKE_context.h"
#include "BKE_editmesh.h"
#include "BKE_global.h"
#include "BKE_layer.h"
#include "BKE_report.h"
#include "RNA_access.h"
#include "RNA_define.h"
#include "WM_api.h"
#include "WM_types.h"
#include "ED_gizmo_utils.h"
#include "ED_mesh.h"
#include "ED_screen.h"
#include "ED_view3d.h"
#include "UI_resources.h"
#include "mesh_intern.h"
#include "ED_gizmo_library.h"
#include "ED_undo.h"

Go to the source code of this file.

Classes

struct  BisectData
 
struct  GizmoGroup
 

Macros

#define USE_GIZMO
 

Functions

static int mesh_bisect_exec (bContext *C, wmOperator *op)
 
static void mesh_bisect_interactive_calc (bContext *C, wmOperator *op, float plane_co[3], float plane_no[3])
 
static int mesh_bisect_invoke (bContext *C, wmOperator *op, const wmEvent *event)
 
static void edbm_bisect_exit (BisectData *opdata)
 
static int mesh_bisect_modal (bContext *C, wmOperator *op, const wmEvent *event)
 
void MESH_OT_bisect (struct wmOperatorType *ot)
 

Bisect Gizmo

typedef struct GizmoGroup GizmoGroup
 
static void MESH_GGT_bisect (struct wmGizmoGroupType *gzgt)
 
static void gizmo_bisect_exec (GizmoGroup *ggd)
 
static void gizmo_mesh_bisect_update_from_op (GizmoGroup *ggd)
 
static void gizmo_bisect_prop_depth_get (const wmGizmo *gz, wmGizmoProperty *gz_prop, void *value_p)
 
static void gizmo_bisect_prop_depth_set (const wmGizmo *gz, wmGizmoProperty *gz_prop, const void *value_p)
 
static void gizmo_bisect_prop_translate_get (const wmGizmo *gz, wmGizmoProperty *gz_prop, void *value_p)
 
static void gizmo_bisect_prop_translate_set (const wmGizmo *gz, wmGizmoProperty *gz_prop, const void *value_p)
 
static void gizmo_bisect_prop_angle_get (const wmGizmo *gz, wmGizmoProperty *gz_prop, void *value_p)
 
static void gizmo_bisect_prop_angle_set (const wmGizmo *gz, wmGizmoProperty *gz_prop, const void *value_p)
 
static bool gizmo_mesh_bisect_poll (const bContext *C, wmGizmoGroupType *gzgt)
 
static void gizmo_mesh_bisect_setup (const bContext *C, wmGizmoGroup *gzgroup)
 
static void gizmo_mesh_bisect_draw_prepare (const bContext *UNUSED(C), wmGizmoGroup *gzgroup)
 

Macro Definition Documentation

◆ USE_GIZMO

#define USE_GIZMO

Definition at line 37 of file editmesh_bisect.c.

Typedef Documentation

◆ GizmoGroup

typedef struct GizmoGroup GizmoGroup

Function Documentation

◆ edbm_bisect_exit()

static void edbm_bisect_exit ( BisectData opdata)
static

◆ gizmo_bisect_exec()

static void gizmo_bisect_exec ( GizmoGroup ggd)
static

XXX. calling redo from property updates is not great. This is needed because changing the RNA doesn't cause a redo and we're not using operator UI which does just this.

Definition at line 494 of file editmesh_bisect.c.

References GizmoGroup::context, GizmoGroup::data, ED_undo_operator_repeat(), GizmoGroup::op, and WM_operator_last_redo().

Referenced by gizmo_bisect_prop_angle_set(), gizmo_bisect_prop_depth_set(), and gizmo_bisect_prop_translate_set().

◆ gizmo_bisect_prop_angle_get()

static void gizmo_bisect_prop_angle_get ( const wmGizmo gz,
wmGizmoProperty gz_prop,
void value_p 
)
static

◆ gizmo_bisect_prop_angle_set()

static void gizmo_bisect_prop_angle_set ( const wmGizmo gz,
wmGizmoProperty gz_prop,
const void value_p 
)
static

◆ gizmo_bisect_prop_depth_get()

static void gizmo_bisect_prop_depth_get ( const wmGizmo gz,
wmGizmoProperty gz_prop,
void value_p 
)
static

◆ gizmo_bisect_prop_depth_set()

static void gizmo_bisect_prop_depth_set ( const wmGizmo gz,
wmGizmoProperty gz_prop,
const void value_p 
)
static

◆ gizmo_bisect_prop_translate_get()

static void gizmo_bisect_prop_translate_get ( const wmGizmo gz,
wmGizmoProperty gz_prop,
void value_p 
)
static

◆ gizmo_bisect_prop_translate_set()

static void gizmo_bisect_prop_translate_set ( const wmGizmo gz,
wmGizmoProperty gz_prop,
const void value_p 
)
static

◆ gizmo_mesh_bisect_draw_prepare()

static void gizmo_mesh_bisect_draw_prepare ( const bContext UNUSEDC,
wmGizmoGroup gzgroup 
)
static

◆ gizmo_mesh_bisect_poll()

static bool gizmo_mesh_bisect_poll ( const bContext C,
wmGizmoGroupType gzgt 
)
static

Definition at line 676 of file editmesh_bisect.c.

References C, and ED_gizmo_poll_or_unlink_delayed_from_operator().

Referenced by MESH_GGT_bisect().

◆ gizmo_mesh_bisect_setup()

static void gizmo_mesh_bisect_setup ( const bContext C,
wmGizmoGroup gzgroup 
)
static

◆ gizmo_mesh_bisect_update_from_op()

static void gizmo_mesh_bisect_update_from_op ( GizmoGroup ggd)
static

◆ mesh_bisect_exec()

static int mesh_bisect_exec ( bContext C,
wmOperator op 
)
static

◆ mesh_bisect_interactive_calc()

static void mesh_bisect_interactive_calc ( bContext C,
wmOperator op,
float  plane_co[3],
float  plane_no[3] 
)
static

◆ mesh_bisect_invoke()

static int mesh_bisect_invoke ( bContext C,
wmOperator op,
const wmEvent event 
)
static

◆ mesh_bisect_modal()

static int mesh_bisect_modal ( bContext C,
wmOperator op,
const wmEvent event 
)
static

◆ MESH_GGT_bisect()

static void MESH_GGT_bisect ( struct wmGizmoGroupType gzgt)
static

◆ MESH_OT_bisect()

void MESH_OT_bisect ( struct wmOperatorType ot)