Blender  V3.3
Functions | Variables
bmesh_py_types_select.c File Reference
#include <Python.h>
#include "BLI_listbase.h"
#include "BLI_utildefines.h"
#include "bmesh.h"
#include "bmesh_py_types.h"
#include "bmesh_py_types_select.h"
#include "../generic/py_capi_utils.h"
#include "../generic/python_utildefines.h"

Go to the source code of this file.

Functions

 PyDoc_STRVAR (bpy_bmeditselseq_active_doc, "The last selected element or None (read-only).\n\n:type: :class:`BMVert`, " ":class:`BMEdge` or :class:`BMFace`")
 
static PyObject * bpy_bmeditselseq_active_get (BPy_BMEditSelSeq *self, void *UNUSED(closure))
 
 PyDoc_STRVAR (bpy_bmeditselseq_validate_doc, ".. method:: validate()\n" "\n" " Ensures all elements in the selection history are selected.\n")
 
static PyObject * bpy_bmeditselseq_validate (BPy_BMEditSelSeq *self)
 
 PyDoc_STRVAR (bpy_bmeditselseq_clear_doc, ".. method:: clear()\n" "\n" " Empties the selection history.\n")
 
static PyObject * bpy_bmeditselseq_clear (BPy_BMEditSelSeq *self)
 
 PyDoc_STRVAR (bpy_bmeditselseq_add_doc, ".. method:: add(element)\n" "\n" " Add an element to the selection history (no action taken if its already added).\n")
 
static PyObject * bpy_bmeditselseq_add (BPy_BMEditSelSeq *self, BPy_BMElem *value)
 
 PyDoc_STRVAR (bpy_bmeditselseq_remove_doc, ".. method:: remove(element)\n" "\n" " Remove an element from the selection history.\n")
 
static PyObject * bpy_bmeditselseq_remove (BPy_BMEditSelSeq *self, BPy_BMElem *value)
 
 PyDoc_STRVAR (bpy_bmeditselseq_discard_doc, ".. method:: discard(element)\n" "\n" " Discard an element from the selection history.\n" "\n" " Like remove but doesn't raise an error when the elements not in the selection list.\n")
 
static PyObject * bpy_bmeditselseq_discard (BPy_BMEditSelSeq *self, BPy_BMElem *value)
 
static Py_ssize_t bpy_bmeditselseq_length (BPy_BMEditSelSeq *self)
 
static PyObject * bpy_bmeditselseq_subscript_int (BPy_BMEditSelSeq *self, int keynum)
 
static PyObject * bpy_bmeditselseq_subscript_slice (BPy_BMEditSelSeq *self, Py_ssize_t start, Py_ssize_t stop)
 
static PyObject * bpy_bmeditselseq_subscript (BPy_BMEditSelSeq *self, PyObject *key)
 
static int bpy_bmeditselseq_contains (BPy_BMEditSelSeq *self, PyObject *value)
 
static PyObject * bpy_bmeditselseq_iter (BPy_BMEditSelSeq *self)
 
static PyObject * bpy_bmeditseliter_next (BPy_BMEditSelIter *self)
 
PyObject * BPy_BMEditSel_CreatePyObject (BMesh *bm)
 
PyObject * BPy_BMEditSelIter_CreatePyObject (BMesh *bm)
 
void BPy_BM_init_types_select (void)
 
int BPy_BMEditSel_Assign (BPy_BMesh *self, PyObject *value)
 

Variables

static PyGetSetDef bpy_bmeditselseq_getseters []
 
static struct PyMethodDef bpy_bmeditselseq_methods []
 
static PySequenceMethods bpy_bmeditselseq_as_sequence
 
static PyMappingMethods bpy_bmeditselseq_as_mapping
 
PyTypeObject BPy_BMEditSelSeq_Type
 
PyTypeObject BPy_BMEditSelIter_Type
 

Detailed Description

This file defines the types for 'BMesh.select_history' sequence and iterator.

select_history is very loosely based on pythons set() type, since items can only exist once. however they do have an order.

Definition in file bmesh_py_types_select.c.

Function Documentation

◆ BPy_BM_init_types_select()

void BPy_BM_init_types_select ( void  )

◆ BPy_BMEditSel_Assign()

int BPy_BMEditSel_Assign ( struct BPy_BMesh self,
PyObject *  value 
)

◆ BPy_BMEditSel_CreatePyObject()

PyObject* BPy_BMEditSel_CreatePyObject ( BMesh bm)

Definition at line 341 of file bmesh_py_types_select.c.

References bm, and BPy_BMEditSelSeq_Type.

Referenced by bpy_bmesh_select_history_get().

◆ BPy_BMEditSelIter_CreatePyObject()

PyObject* BPy_BMEditSelIter_CreatePyObject ( BMesh bm)

Definition at line 349 of file bmesh_py_types_select.c.

References bm, and BPy_BMEditSelIter_Type.

Referenced by bpy_bmeditselseq_iter().

◆ bpy_bmeditseliter_next()

static PyObject* bpy_bmeditseliter_next ( BPy_BMEditSelIter self)
static

◆ bpy_bmeditselseq_active_get()

static PyObject* bpy_bmeditselseq_active_get ( BPy_BMEditSelSeq self,
void UNUSEDclosure 
)
static

◆ bpy_bmeditselseq_add()

static PyObject* bpy_bmeditselseq_add ( BPy_BMEditSelSeq self,
BPy_BMElem value 
)
static

◆ bpy_bmeditselseq_clear()

static PyObject* bpy_bmeditselseq_clear ( BPy_BMEditSelSeq self)
static

Definition at line 66 of file bmesh_py_types_select.c.

References BM_select_history_clear(), BPY_BM_CHECK_OBJ, and self.

◆ bpy_bmeditselseq_contains()

static int bpy_bmeditselseq_contains ( BPy_BMEditSelSeq self,
PyObject *  value 
)
static

◆ bpy_bmeditselseq_discard()

static PyObject* bpy_bmeditselseq_discard ( BPy_BMEditSelSeq self,
BPy_BMElem value 
)
static

◆ bpy_bmeditselseq_iter()

static PyObject* bpy_bmeditselseq_iter ( BPy_BMEditSelSeq self)
static

◆ bpy_bmeditselseq_length()

static Py_ssize_t bpy_bmeditselseq_length ( BPy_BMEditSelSeq self)
static

Definition at line 159 of file bmesh_py_types_select.c.

References BLI_listbase_count(), BPY_BM_CHECK_INT, and self.

Referenced by bpy_bmeditselseq_subscript().

◆ bpy_bmeditselseq_remove()

static PyObject* bpy_bmeditselseq_remove ( BPy_BMEditSelSeq self,
BPy_BMElem value 
)
static

◆ bpy_bmeditselseq_subscript()

static PyObject* bpy_bmeditselseq_subscript ( BPy_BMEditSelSeq self,
PyObject *  key 
)
static

◆ bpy_bmeditselseq_subscript_int()

static PyObject* bpy_bmeditselseq_subscript_int ( BPy_BMEditSelSeq self,
int  keynum 
)
static

◆ bpy_bmeditselseq_subscript_slice()

static PyObject* bpy_bmeditselseq_subscript_slice ( BPy_BMEditSelSeq self,
Py_ssize_t  start,
Py_ssize_t  stop 
)
static

◆ bpy_bmeditselseq_validate()

static PyObject* bpy_bmeditselseq_validate ( BPy_BMEditSelSeq self)
static

Definition at line 55 of file bmesh_py_types_select.c.

References BM_select_history_validate(), BPY_BM_CHECK_OBJ, and self.

◆ PyDoc_STRVAR() [1/6]

PyDoc_STRVAR ( bpy_bmeditselseq_active_doc  ,
"The last selected element or None (read-only).\n\n:type: :class:`BMVert ,
" ":class:`BMEdge` or :class:`BMFace`"   
)

◆ PyDoc_STRVAR() [2/6]

PyDoc_STRVAR ( bpy_bmeditselseq_add_doc  ,
".. method:: add(element)\n" "\n" " Add an element to the selection history (no action taken if its already added).\n"   
)

◆ PyDoc_STRVAR() [3/6]

PyDoc_STRVAR ( bpy_bmeditselseq_clear_doc  ,
".. method:: clear()\n" "\n" " Empties the selection history.\n"   
)

◆ PyDoc_STRVAR() [4/6]

PyDoc_STRVAR ( bpy_bmeditselseq_discard_doc  ,
".. method:: discard(element)\n" "\n" " Discard an element from the selection history.\n" "\n" " Like remove but doesn't raise an error when the elements not in the selection list.\n"   
)

◆ PyDoc_STRVAR() [5/6]

PyDoc_STRVAR ( bpy_bmeditselseq_remove_doc  ,
".. method:: remove(element)\n" "\n" " Remove an element from the selection history.\n"   
)

◆ PyDoc_STRVAR() [6/6]

PyDoc_STRVAR ( bpy_bmeditselseq_validate_doc  ,
".. method:: validate()\n" "\n" " Ensures all elements in the selection history are selected.\n"   
)

Variable Documentation

◆ BPy_BMEditSelIter_Type

PyTypeObject BPy_BMEditSelIter_Type

◆ bpy_bmeditselseq_as_mapping

PyMappingMethods bpy_bmeditselseq_as_mapping
static
Initial value:
= {
(objobjargproc)NULL,
}
static PyObject * bpy_bmeditselseq_subscript(BPy_BMEditSelSeq *self, PyObject *key)
static Py_ssize_t bpy_bmeditselseq_length(BPy_BMEditSelSeq *self)

Definition at line 307 of file bmesh_py_types_select.c.

Referenced by BPy_BM_init_types_select().

◆ bpy_bmeditselseq_as_sequence

PySequenceMethods bpy_bmeditselseq_as_sequence
static
Initial value:
= {
NULL,
NULL,
NULL,
(ssizeobjargproc)NULL,
NULL,
(binaryfunc)NULL,
(ssizeargfunc)NULL,
}
static int bpy_bmeditselseq_contains(BPy_BMEditSelSeq *self, PyObject *value)
static PyObject * bpy_bmeditselseq_subscript_int(BPy_BMEditSelSeq *self, int keynum)

Definition at line 293 of file bmesh_py_types_select.c.

Referenced by BPy_BM_init_types_select().

◆ bpy_bmeditselseq_getseters

PyGetSetDef bpy_bmeditselseq_getseters[]
static
Initial value:
= {
{"active",
(setter)NULL,
bpy_bmeditselseq_active_doc,
NULL},
}
static PyObject * bpy_bmeditselseq_active_get(BPy_BMEditSelSeq *self, void *UNUSED(closure))

Definition at line 42 of file bmesh_py_types_select.c.

Referenced by BPy_BM_init_types_select().

◆ bpy_bmeditselseq_methods

struct PyMethodDef bpy_bmeditselseq_methods[]
static
Initial value:
= {
{"validate",
METH_NOARGS,
bpy_bmeditselseq_validate_doc},
{"clear", (PyCFunction)bpy_bmeditselseq_clear, METH_NOARGS, bpy_bmeditselseq_clear_doc},
{"add", (PyCFunction)bpy_bmeditselseq_add, METH_O, bpy_bmeditselseq_add_doc},
{"remove", (PyCFunction)bpy_bmeditselseq_remove, METH_O, bpy_bmeditselseq_remove_doc},
{"discard", (PyCFunction)bpy_bmeditselseq_discard, METH_O, bpy_bmeditselseq_discard_doc},
{NULL, NULL, 0, NULL},
}
static PyObject * bpy_bmeditselseq_remove(BPy_BMEditSelSeq *self, BPy_BMElem *value)
static PyObject * bpy_bmeditselseq_clear(BPy_BMEditSelSeq *self)
static PyObject * bpy_bmeditselseq_add(BPy_BMEditSelSeq *self, BPy_BMElem *value)
static PyObject * bpy_bmeditselseq_validate(BPy_BMEditSelSeq *self)
static PyObject * bpy_bmeditselseq_discard(BPy_BMEditSelSeq *self, BPy_BMElem *value)

Definition at line 126 of file bmesh_py_types_select.c.

Referenced by BPy_BM_init_types_select().

◆ BPy_BMEditSelSeq_Type

PyTypeObject BPy_BMEditSelSeq_Type