Metalball drawing: rename mball helpers to handles
[blender.git] / source / blenderplayer / bad_level_call_stubs / stubs.c
1 /*
2  * ***** BEGIN GPL LICENSE BLOCK *****
3  *
4  * This program is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU General Public License
6  * as published by the Free Software Foundation; either version 2
7  * of the License, or (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program; if not, write to the Free Software Foundation,
16  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
17  *
18  * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
19  * All rights reserved.
20  *
21  * The Original Code is: all of this file.
22  *
23  * Contributor(s): none yet.
24  *
25  * ***** END GPL LICENSE BLOCK *****
26  * BKE_bad_level_calls function stubs
27  */
28
29 /** \file blenderplayer/bad_level_call_stubs/stubs.c
30  *  \ingroup blc
31  */
32
33 #ifdef WITH_GAMEENGINE
34
35 #define ASSERT_STUBS 0
36 #if ASSERT_STUBS
37 #  include <assert.h>
38 #  define STUB_ASSERT(x) (assert(x))
39 #else
40 #  define STUB_ASSERT(x)
41 #endif
42
43
44 struct ARegion;
45 struct ARegionType;
46 struct bFaceMap;
47 struct BMEditMesh;
48 struct Base;
49 struct bContext;
50 struct BoundBox;
51 struct Brush;
52 struct CSG_FaceIteratorDescriptor;
53 struct CSG_VertexIteratorDescriptor;
54 struct ChannelDriver;
55 struct ColorBand;
56 struct Context;
57 struct Curve;
58 struct CurveMapping;
59 struct DerivedMesh;
60 struct EditBone;
61 struct EnvMap;
62 struct FCurve;
63 struct Heap;
64 struct HeapNode;
65 struct ID;
66 struct ImBuf;
67 struct Image;
68 struct ImageUser;
69 struct KeyingSet;
70 struct KeyingSetInfo;
71 struct MCol;
72 struct MTex;
73 struct Main;
74 struct Mask;
75 struct Material;
76 struct MenuType;
77 struct Mesh;
78 struct MetaBall;
79 struct Lattice;
80 struct ModifierData;
81 struct MovieClip;
82 struct MultiresModifierData;
83 struct HookModifierData;
84 struct NodeBlurData;
85 struct Nurb;
86 struct Object;
87 struct PBVHNode;
88 struct PyObject;
89 struct Render;
90 struct RenderEngine;
91 struct RenderEngineType;
92 struct RenderLayer;
93 struct RenderResult;
94 struct Scene;
95 struct Scene;
96 struct ScrArea;
97 struct SculptSession;
98 struct ShadeInput;
99 struct ShadeResult;
100 struct SpaceButs;
101 struct SpaceClip;
102 struct SpaceImage;
103 struct SpaceNode;
104 struct Tex;
105 struct TexResult;
106 struct Text;
107 struct ToolSettings;
108 struct View2D;
109 struct View3D;
110 struct bAction;
111 struct bArmature;
112 struct bConstraint;
113 struct bConstraintOb;
114 struct bConstraintTarget;
115 struct bContextDataResult;
116 struct bGPDlayer;
117 struct bFaceMap;
118 struct bNode;
119 struct bNodeType;
120 struct bNodeSocket;
121 struct bNodeSocketType;
122 struct bNodeTree;
123 struct bNodeTreeType;
124 struct bPoseChannel;
125 struct bPythonConstraint;
126 struct bTheme;
127 struct uiLayout;
128 struct wmEvent;
129 struct wmKeyConfig;
130 struct wmKeyMap;
131 struct wmOperator;
132 struct wmOperatorType;
133 struct wmWindow;
134 struct wmWindowManager;
135 struct wmManipulatorGroupType;
136 struct wmManipulatorMap;
137
138
139 /* -------------------------------------------------------------------- */
140 /* Declarations */
141
142 /* may cause troubles... enable for now so args match for certain */
143 #if 1
144 #if defined(__GNUC__)
145 #  pragma GCC diagnostic error "-Wmissing-prototypes"
146 #  pragma GCC diagnostic ignored "-Wunused-parameter"
147 #endif
148
149 #include <stdio.h>  /* FILE */
150
151 #include "../../intern/dualcon/dualcon.h"
152 #include "../../intern/elbeem/extern/elbeem.h"
153 #include "../blender/blenkernel/BKE_modifier.h"
154 #include "../blender/blenkernel/BKE_paint.h"
155 #include "../blender/collada/collada.h"
156 #include "../blender/compositor/COM_compositor.h"
157 #include "../blender/editors/include/ED_armature.h"
158 #include "../blender/editors/include/ED_anim_api.h"
159 #include "../blender/editors/include/ED_buttons.h"
160 #include "../blender/editors/include/ED_clip.h"
161 #include "../blender/editors/include/ED_curve.h"
162 #include "../blender/editors/include/ED_fileselect.h"
163 #include "../blender/editors/include/ED_gpencil.h"
164 #include "../blender/editors/include/ED_image.h"
165 #include "../blender/editors/include/ED_info.h"
166 #include "../blender/editors/include/ED_keyframes_edit.h"
167 #include "../blender/editors/include/ED_keyframing.h"
168 #include "../blender/editors/include/ED_lattice.h"
169 #include "../blender/editors/include/ED_manipulator_library.h"
170 #include "../blender/editors/include/ED_mball.h"
171 #include "../blender/editors/include/ED_mesh.h"
172 #include "../blender/editors/include/ED_node.h"
173 #include "../blender/editors/include/ED_object.h"
174 #include "../blender/editors/include/ED_particle.h"
175 #include "../blender/editors/include/ED_render.h"
176 #include "../blender/editors/include/ED_scene.h"
177 #include "../blender/editors/include/ED_screen.h"
178 #include "../blender/editors/include/ED_space_api.h"
179 #include "../blender/editors/include/ED_text.h"
180 #include "../blender/editors/include/ED_transform.h"
181 #include "../blender/editors/include/ED_transform_snap_object_context.h"
182 #include "../blender/editors/include/ED_uvedit.h"
183 #include "../blender/editors/include/ED_view3d.h"
184 #include "../blender/editors/include/UI_interface.h"
185 #include "../blender/editors/include/UI_interface_icons.h"
186 #include "../blender/editors/include/UI_resources.h"
187 #include "../blender/editors/include/UI_view2d.h"
188 #include "../blender/freestyle/FRS_freestyle.h"
189 #include "../blender/gpu/GPU_immediate.h"
190 #include "../blender/gpu/GPU_matrix.h"
191 #include "../blender/python/BPY_extern.h"
192 #include "../blender/python/intern/bpy_manipulator_wrap.h"
193 #include "../blender/render/extern/include/RE_engine.h"
194 #include "../blender/render/extern/include/RE_pipeline.h"
195 #include "../blender/render/extern/include/RE_render_ext.h"
196 #include "../blender/render/extern/include/RE_shader_ext.h"
197 #include "../blender/draw/DRW_engine.h"
198 #include "../blender/windowmanager/WM_api.h"
199 #include "../blender/windowmanager/WM_types.h"
200 #include "../blender/windowmanager/WM_message.h"
201
202
203 /* -------------------------------------------------------------------- */
204 /* Externs
205  * (ideally we wouldn't have _any_ but we can't include all directly)
206  */
207
208 /* bpy_operator_wrap.h */
209 extern void macro_wrapper(struct wmOperatorType *ot, void *userdata);
210 extern void operator_wrapper(struct wmManipulatorGroupType *wgt, void *userdata);
211
212 /* bpy_widgetgroup_wrap.h */
213 extern void widgetgroup_wrapper(struct wmOperatorType *ot, void *userdata);
214
215 /* bpy_rna.h */
216 extern bool pyrna_id_FromPyObject(struct PyObject *obj, struct ID **id);
217 extern const char *BPY_app_translations_py_pgettext(const char *msgctxt, const char *msgid);
218 extern const char *BPY_app_translations_py_pgettext(const char *msgctxt, const char *msgid);
219 extern struct PyObject *pyrna_id_CreatePyObject(struct ID *id);
220 extern bool pyrna_id_CheckPyObject(struct PyObject *obj);
221 /* bpy_interface.c */
222 bool BPY_string_is_keyword(const char *str) { return false; }
223
224 #endif
225 /* end declarations */
226
227
228 /* -------------------------------------------------------------------- */
229 /* Return Macro's */
230
231 #include <string.h>  /* memset */
232 #define RET_NULL {STUB_ASSERT(0); return (void *) NULL;}
233 #define RET_ZERO {STUB_ASSERT(0); return 0;}
234 #define RET_MINUSONE {STUB_ASSERT(0); return -1;}
235 #define RET_STRUCT(t) {struct t v; STUB_ASSERT(0); memset(&v, 0, sizeof(v)); return v;}
236 #define RET_ARG(arg) {STUB_ASSERT(0); return arg; }
237 #define RET_NONE {STUB_ASSERT(0);}
238
239 /* -------------------------------------------------------------------- */
240 /* Stubs */
241
242 /*new render funcs */
243 void EDBM_selectmode_set(struct BMEditMesh *em) RET_NONE
244 void EDBM_mesh_load(struct Object *ob) RET_NONE
245 void EDBM_mesh_make(struct ToolSettings *ts, struct Object *ob, const bool use_key_index) RET_NONE
246 void EDBM_mesh_normals_update(struct BMEditMesh *em) RET_NONE
247 void *g_system;
248 bool EDBM_uv_check(struct BMEditMesh *em) RET_ZERO
249
250 float *RE_RenderLayerGetPass(volatile struct RenderLayer *rl, const char *name, const char *viewname) RET_NULL
251 float RE_filter_value(int type, float x) RET_ZERO
252 struct RenderLayer *RE_GetRenderLayer(struct RenderResult *rr, const char *name) RET_NULL
253 void RE_texture_rng_init() RET_NONE
254 void RE_texture_rng_exit() RET_NONE
255
256 bool RE_layers_have_name(struct RenderResult *result) RET_ZERO
257 const char *RE_engine_active_view_get(struct RenderEngine *engine) RET_NULL
258 void RE_engine_active_view_set(struct RenderEngine *engine, const char *viewname) RET_NONE
259 void RE_engine_get_camera_model_matrix(struct RenderEngine *engine, struct Object *camera, int use_spherical_stereo, float *r_modelmat) RET_NONE
260 float RE_engine_get_camera_shift_x(struct RenderEngine *engine, struct Object *camera, int use_spherical_stereo) RET_ZERO
261 int RE_engine_get_spherical_stereo(struct RenderEngine *engine, struct Object *camera) RET_ZERO
262 void RE_SetActiveRenderView(struct Render *re, const char *viewname) RET_NONE
263
264 struct RenderPass *RE_pass_find_by_name(volatile struct RenderLayer *rl, const char *name, const char *viewname) RET_NULL
265 struct RenderPass *RE_pass_find_by_type(volatile struct RenderLayer *rl, int passtype, const char *viewname) RET_NULL
266 bool RE_HasCombinedLayer(RenderResult *res) RET_ZERO
267
268 /* zbuf.c stub */
269 void antialias_tagbuf(int xsize, int ysize, char *rectmove) RET_NONE
270 void RE_zbuf_accumulate_vecblur(struct NodeBlurData *nbd, int xsize, int ysize, float *newrect, const float *imgrect, float *vecbufrect, const float *zbufrect) RET_NONE
271
272 /* imagetexture.c stub */
273 void ibuf_sample(struct ImBuf *ibuf, float fx, float fy, float dx, float dy, float *result) RET_NONE
274
275 /* Freestyle */
276 bool ED_texture_context_check_linestyle(const struct bContext *C) RET_ZERO
277 void FRS_free_view_map_cache(void) RET_NONE
278
279 /* texture.c */
280 int     multitex_ext(struct Tex *tex, float texvec[3], float dxt[3], float dyt[3], int osatex, struct TexResult *texres, const short thread, struct ImagePool *pool, bool scene_color_manage, const bool skip_load_image) RET_ZERO
281 int multitex_ext_safe(struct Tex *tex, float texvec[3], struct TexResult *texres, struct ImagePool *pool, bool scene_color_manage, const bool skip_load_image) RET_ZERO
282 int multitex_nodes(struct Tex *tex, float texvec[3], float dxt[3], float dyt[3], int osatex, struct TexResult *texres, const short thread, short which_output, struct ShadeInput *shi, struct MTex *mtex, struct ImagePool *pool) RET_ZERO
283
284 struct Material *RE_sample_material_init(struct Material *orig_mat, struct Scene *scene) RET_NULL
285 void RE_sample_material_free(struct Material *mat) RET_NONE
286 void RE_sample_material_color(
287         struct Material *mat, float color[3], float *alpha, const float volume_co[3], const float surface_co[3],
288         int tri_index, struct DerivedMesh *orcoDm, struct Object *ob) RET_NONE
289 /* nodes */
290 struct Render *RE_GetRender(const char *name) RET_NULL
291 struct Render *RE_GetSceneRender(const struct Scene *scene) RET_NULL
292 struct Object *RE_GetCamera(struct Render *re) RET_NULL
293 float RE_lamp_get_data(struct ShadeInput *shi, struct Object *lamp_obj, float col[4], float lv[3], float *dist, float shadow[4]) RET_ZERO
294 const float (*RE_object_instance_get_matrix(struct ObjectInstanceRen *obi, int matrix_id))[4] RET_NULL
295 const float (*RE_render_current_get_matrix(int matrix_id))[4] RET_NULL
296 float RE_object_instance_get_object_pass_index(struct ObjectInstanceRen *obi) RET_ZERO
297 float RE_object_instance_get_random_id(struct ObjectInstanceRen *obi) RET_ZERO
298
299 /* blenkernel */
300 bool BKE_paint_proj_mesh_data_check(struct Scene *scene, struct Object *ob, bool *uvs, bool *mat, bool *tex, bool *stencil) RET_ZERO
301
302 /* render */
303 void RE_FreeRenderResult(struct RenderResult *res) RET_NONE
304 void RE_FreeAllRenderResults(void) RET_NONE
305 struct RenderResult *RE_MultilayerConvert(void *exrhandle, const char *colorspace, bool predivide, int rectx, int recty) RET_NULL
306 struct Scene *RE_GetScene(struct Render *re) RET_NULL
307 void RE_Database_Free(struct Render *re) RET_NONE
308 void RE_FreeRender(struct Render *re) RET_NONE
309 void RE_DataBase_GetView(struct Render *re, float mat[4][4]) RET_NONE
310 int externtex(
311         const struct MTex *mtex, const float vec[3], float *tin, float *tr, float *tg, float *tb, float *ta,
312         const int thread, struct ImagePool *pool, const bool skip_load_image, const bool texnode_preview) RET_ZERO
313 float texture_value_blend(float tex, float out, float fact, float facg, int blendtype) RET_ZERO
314 void texture_rgb_blend(float in[3], const float tex[3], const float out[3], float fact, float facg, int blendtype) RET_NONE
315 double elbeemEstimateMemreq(int res, float sx, float sy, float sz, int refine, char *retstr) RET_ZERO
316 struct Render *RE_NewRender(const char *name) RET_NULL
317 struct Render *RE_NewSceneRender(const struct Scene *scene) RET_NULL
318 void RE_SwapResult(struct Render *re, struct RenderResult **rr) RET_NONE
319 void RE_BlenderFrame(struct Render *re, struct Main *bmain, struct Scene *scene, struct ViewLayer *view_layer, struct Object *camera_override, unsigned int lay_override, int frame, const bool write_still) RET_NONE
320 bool RE_WriteEnvmapResult(struct ReportList *reports, struct Scene *scene, struct EnvMap *env, const char *relpath, const char imtype, float layout[12]) RET_ZERO
321
322 /* rna */
323 float *ED_view3d_cursor3d_get(struct Scene *scene, struct View3D *v3d) RET_NULL
324 void WM_menutype_free(void) RET_NONE
325 void WM_menutype_freelink(struct MenuType *mt) RET_NONE
326 bool WM_menutype_add(struct MenuType *mt) RET_ZERO
327 int WM_operator_props_dialog_popup(struct bContext *C, struct wmOperator *op, int width, int height) RET_ZERO
328 int WM_operator_confirm(struct bContext *C, struct wmOperator *op, const struct wmEvent *event) RET_ZERO
329 struct MenuType *WM_menutype_find(const char *idname, bool quiet) RET_NULL
330 void WM_operator_stack_clear(struct wmWindowManager *wm) RET_NONE
331 void WM_operator_handlers_clear(wmWindowManager *wm, struct wmOperatorType *ot) RET_NONE
332 bool WM_operator_is_repeat(const struct bContext *C, const struct wmOperator *op) RET_ZERO;
333 void WM_windows_scene_data_sync(const struct ListBase *win_lb, struct Scene *scene) RET_NONE
334 struct Scene *WM_windows_scene_get_from_screen(const struct wmWindowManager *wm, const struct bScreen *screen) RET_NULL
335 struct WorkSpace *WM_windows_workspace_get_from_screen(const struct wmWindowManager *wm, const struct bScreen *screen) RET_NULL
336 struct bScreen *WM_window_get_active_screen(const struct wmWindow *win) RET_NULL
337 struct Scene *WM_window_get_active_scene(const struct wmWindow *win) RET_NULL
338 struct WorkSpace *WM_window_get_active_workspace(const wmWindow *win) RET_NULL
339 void WM_window_change_active_scene(struct Main *bmain, struct bContext *C, struct wmWindow *win, struct Scene *scene_new) RET_NONE
340 bool WM_window_is_temp_screen(const struct wmWindow *win) RET_ZERO
341
342 void WM_autosave_init(wmWindowManager *wm) RET_NONE
343 void WM_jobs_kill_all_except(struct wmWindowManager *wm, void *owner) RET_NONE
344
345 void WM_lib_reload(struct Library *lib, struct bContext *C, struct ReportList *reports) RET_NONE
346
347 void WM_msg_publish_rna(struct wmMsgBus *mbus, PointerRNA *ptr, PropertyRNA *prop) RET_NONE
348
349
350 char *WM_clipboard_text_get(bool selection, int *r_len) RET_NULL
351 char *WM_clipboard_text_get_firstline(bool selection, int *r_len) RET_NULL
352 void WM_clipboard_text_set(const char *buf, bool selection) RET_NONE
353
354 void WM_cursor_set(struct wmWindow *win, int curor) RET_NONE
355 void WM_cursor_modal_set(struct wmWindow *win, int curor) RET_NONE
356 void WM_cursor_modal_restore(struct wmWindow *win) RET_NONE
357 void WM_cursor_time(struct wmWindow *win, int nr) RET_NONE
358 void WM_cursor_warp(struct wmWindow *win, int x, int y) RET_NONE
359
360 struct wmJob *WM_jobs_get(struct wmWindowManager *wm, struct wmWindow *win, void *owner, const char *name, int flag, int job_type) RET_NULL
361 void WM_jobs_customdata_set(struct wmJob *job, void *customdata, void (*free)(void *)) RET_NONE
362 void WM_jobs_timer(struct wmJob *job, double timestep, unsigned int note, unsigned int endnote) RET_NONE
363
364 void WM_jobs_callbacks(struct wmJob *job,
365                        void (*startjob)(void *, short *, short *, float *),
366                        void (*initjob)(void *),
367                        void (*update)(void *),
368                        void (*endjob)(void *)) RET_NONE
369
370 void WM_jobs_start(struct wmWindowManager *wm, struct wmJob *job) RET_NONE
371 void WM_report(ReportType type, const char *message) RET_NONE
372
373 void BPY_RNA_manipulatorgroup_wrapper(struct wmManipulatorGroupType *wgt, void *userdata) RET_NONE
374 void BPY_RNA_manipulator_wrapper(struct wmManipulatorType *wgt, void *userdata) RET_NONE
375
376 struct PointerRNA *WM_manipulator_operator_set(struct wmManipulator *mpr, int part_index, struct wmOperatorType *ot, struct IDProperty *properties) RET_NULL
377 const struct wmManipulatorPropertyType *WM_manipulatortype_target_property_find(const struct wmManipulatorType *wt, const char *idname) RET_NULL
378 const struct wmManipulatorType *WM_manipulatortype_find(const char *idname, bool quiet) RET_NULL
379 struct wmManipulator *WM_manipulator_new_ptr(const struct wmManipulatorType *wt, struct wmManipulatorGroup *mgroup, struct PointerRNA *properties) RET_NULL
380 struct wmManipulatorGroupType *WM_manipulatorgrouptype_append_ptr(void (*mnpfunc)(struct wmManipulatorGroupType *, void *), void *userdata) RET_NULL
381 struct wmManipulatorGroupType *WM_manipulatorgrouptype_find(const char *idname, bool quiet) RET_NULL
382 void WM_manipulator_unlink(ListBase *manipulatorlist, struct wmManipulatorMap *mmap, struct wmManipulator *mpr, struct bContext *C) RET_NONE
383 void WM_manipulator_group_type_add_ptr(struct wmManipulatorGroupType *wgt) RET_NONE
384 void WM_manipulator_group_type_add_ptr_ex(struct wmManipulatorGroupType *wgt, struct wmManipulatorMapType *mmap_type) RET_NONE
385 void WM_manipulator_group_type_remove_ptr(struct Main *bmain, struct wmManipulatorGroupType *wgt) RET_NONE
386 void WM_manipulator_name_set(struct wmManipulatorGroup *mgroup, struct wmManipulator *mpr, const char *name) RET_NONE
387 bool WM_manipulator_select_set(struct wmManipulatorMap *mmap, struct wmManipulator *mpr, bool select) RET_ZERO
388 void WM_manipulator_target_property_def_rna_ptr(struct wmManipulator *mpr, const struct wmManipulatorPropertyType *mpr_prop_type, struct PointerRNA *ptr, struct PropertyRNA *prop, int index) RET_NONE
389 void WM_manipulatorgrouptype_free_ptr(struct wmManipulatorGroupType *wt) RET_NONE
390 void WM_manipulatormaptype_group_unlink(struct bContext *C, struct Main *bmain, struct wmManipulatorMapType *mmap_type, const struct wmManipulatorGroupType *wgt) RET_NONE
391 void WM_manipulatortype_append_ptr(void (*mnpfunc)(struct wmManipulatorType *, void *), void *userdata) RET_NONE
392 void WM_manipulatortype_remove_ptr(struct bContext *C, struct Main *bmain, struct wmManipulatorType *wt) RET_NONE
393
394 void ED_manipulator_draw_preset_box(const struct wmManipulator *mpr, float mat[4][4], int select_id) RET_NONE
395 void ED_manipulator_draw_preset_arrow(const struct wmManipulator *mpr, float mat[4][4], int axis, int select_id) RET_NONE
396 void ED_manipulator_draw_preset_circle(const struct wmManipulator *mpr, float mat[4][4], int axis, int select_id) RET_NONE
397 void ED_manipulator_draw_preset_facemap(const struct bContext *C, const struct wmManipulator *mpr, struct Scene *scene, struct Object *ob, const int facemap, int select_id) RET_NONE
398
399 struct wmManipulatorMapType *WM_manipulatormaptype_find(const struct wmManipulatorMapType_Params *wmap_params) RET_NULL
400 struct wmManipulatorMapType *WM_manipulatormaptype_ensure(const struct wmManipulatorMapType_Params *wmap_params) RET_NULL
401 struct wmManipulatorMap *WM_manipulatormap_new_from_type(const struct wmManipulatorMapType_Params *wmap_params) RET_NULL
402 void WM_manipulatormaptype_group_init_runtime(
403         const struct Main *bmain, struct wmManipulatorMapType *mmap_type, struct wmManipulatorGroupType *wgt) RET_NONE
404 const struct ListBase *WM_manipulatormap_group_list(struct wmManipulatorMap *mmap) RET_NULL
405 void WM_manipulator_calc_matrix_final(const struct wmManipulator *mpr, float r_mat[4][4]) RET_NONE
406 struct wmManipulatorProperty *WM_manipulator_target_property_find(struct wmManipulator *mpr, const char *idname) RET_NULL
407 bool WM_manipulator_target_property_is_valid(const struct wmManipulatorProperty *mpr_prop) RET_ZERO
408
409 #ifdef WITH_INPUT_NDOF
410     void WM_ndof_deadzone_set(float deadzone) RET_NONE
411 #endif
412
413 void                WM_uilisttype_init(void) RET_NONE
414 struct uiListType  *WM_uilisttype_find(const char *idname, bool quiet) RET_NULL
415 bool                WM_uilisttype_add(struct uiListType *ult) RET_ZERO
416 void                WM_uilisttype_freelink(struct uiListType *ult) RET_NONE
417 void                WM_uilisttype_free(void) RET_NONE
418
419 struct wmKeyMapItem *WM_keymap_item_find_id(struct wmKeyMap *keymap, int id) RET_NULL
420 int WM_enum_search_invoke(struct bContext *C, struct wmOperator *op, const struct wmEvent *event) RET_ZERO
421 void WM_event_add_notifier(const struct bContext *C, unsigned int type, void *reference) RET_NONE
422 void WM_main_add_notifier(unsigned int type, void *reference) RET_NONE
423 void ED_armature_bone_rename(struct bArmature *arm, const char *oldnamep, const char *newnamep) RET_NONE
424 void ED_armature_transform(struct bArmature *arm, float mat[4][4], const bool do_props) RET_NONE
425 struct wmEventHandler *WM_event_add_modal_handler(struct bContext *C, struct wmOperator *op) RET_NULL
426 struct wmTimer *WM_event_add_timer(struct wmWindowManager *wm, struct wmWindow *win, int event_type, double timestep) RET_NULL
427 void WM_event_remove_timer(struct wmWindowManager *wm, struct wmWindow *win, struct wmTimer *timer) RET_NONE
428 float WM_event_tablet_data(const struct wmEvent *event, int *pen_flip, float tilt[2]) RET_ZERO
429 bool WM_event_is_tablet(const struct wmEvent *event) RET_ZERO
430 void ED_armature_edit_bone_remove(struct bArmature *arm, struct EditBone *exBone) RET_NONE
431 void object_test_constraints(struct Object *owner) RET_NONE
432 void ED_armature_ebone_to_mat4(struct EditBone *ebone, float mat[4][4]) RET_NONE
433 void ED_armature_ebone_from_mat4(EditBone *ebone, float mat[4][4]) RET_NONE
434 void ED_object_parent(struct Object *ob, struct Object *par, const int type, const char *substr) RET_NONE
435 void ED_object_constraint_set_active(struct Object *ob, struct bConstraint *con) RET_NONE
436 void ED_object_facemap_face_add(struct Object *ob, struct bFaceMap *fmap, int facenum) RET_NONE
437 void ED_object_facemap_face_remove(struct Object *ob, struct bFaceMap *fmap, int facenum) RET_NONE
438 void ED_node_composit_default(const struct bContext *C, struct Scene *scene) RET_NONE
439 void *ED_region_draw_cb_activate(struct ARegionType *art, void(*draw)(const struct bContext *, struct ARegion *, void *), void *custumdata, int type) RET_ZERO /* XXX this one looks weird */
440 void *ED_region_draw_cb_customdata(void *handle) RET_ZERO /* XXX This one looks wrong also */
441 void ED_region_draw_cb_exit(struct ARegionType *art, void *handle) RET_NONE
442 void ED_area_headerprint(struct ScrArea *sa, const char *str) RET_NONE
443 void ED_gpencil_parent_location(struct bGPDlayer *gpl, float diff_mat[4][4]) RET_NONE
444 void UI_view2d_region_to_view(struct View2D *v2d, float x, float y, float *viewx, float *viewy) RET_NONE
445 bool UI_view2d_view_to_region_clip(struct View2D *v2d, float x, float y, int *regionx, int *regiony) RET_ZERO
446 void UI_view2d_view_to_region(struct View2D *v2d, float x, float y, int *regionx, int *region_y) RET_NONE
447 void UI_view2d_sync(struct bScreen *screen, struct ScrArea *sa, struct View2D *v2dcur, int flag) RET_NONE
448
449 struct EditBone *ED_armature_bone_get_mirrored(const struct ListBase *edbo, EditBone *ebo) RET_NULL
450 struct EditBone *ED_armature_edit_bone_add(struct bArmature *arm, const char *name) RET_NULL
451 struct ListBase *get_active_constraints (const struct EvaluationContext *eval_ctx, struct Object *ob) RET_NULL
452 struct ListBase *get_constraint_lb(struct Object *ob, struct bConstraint *con, struct bPoseChannel **r_pchan) RET_NULL
453
454 bool ED_space_image_show_uvedit(struct SpaceImage *sima, struct Object *obedit) RET_ZERO
455 bool ED_space_image_show_render(struct SpaceImage *sima) RET_ZERO
456 bool ED_space_image_show_paint(struct SpaceImage *sima) RET_ZERO
457 void ED_space_image_paint_update(struct wmWindowManager *wm, struct Scene *scene) RET_NONE
458 void ED_space_image_set(struct SpaceImage *sima, struct Scene *scene, struct Object *obedit, struct Image *ima) RET_NONE
459 void ED_space_image_uv_sculpt_update(struct wmWindowManager *wm, struct Scene *scene) RET_NONE
460 void ED_space_image_scopes_update(const struct bContext *C, struct SpaceImage *sima, struct ImBuf *ibuf, bool use_view_settings) RET_NONE
461
462 void ED_uvedit_get_aspect(struct Scene *scene, struct Object *ob, struct BMesh *em, float *aspx, float *aspy) RET_NONE
463
464 struct MovieClip *ED_space_clip_get_clip(struct SpaceClip *sc) RET_NULL
465 void ED_space_clip_set_clip(struct bContext *C, struct bScreen *screen, struct SpaceClip *sc, struct MovieClip *clip) RET_NONE
466 void ED_space_clip_set_mask(struct bContext *C, struct SpaceClip *sc, struct Mask *mask) RET_NONE
467 void ED_space_image_set_mask(struct bContext *C, struct SpaceImage *sima, struct Mask *mask) RET_NONE
468
469 void ED_area_tag_redraw_regiontype(struct ScrArea *sa, int regiontype) RET_NONE
470 void ED_render_engine_changed(struct Main *bmain) RET_NONE
471
472 void ED_file_read_bookmarks(void) RET_NONE
473 void ED_file_change_dir(struct bContext *C) RET_NONE
474 void ED_preview_kill_jobs(struct wmWindowManager *wm, struct Main *bmain) RET_NONE
475 struct FSMenu *ED_fsmenu_get(void) RET_NULL
476 struct FSMenuEntry *ED_fsmenu_get_category(struct FSMenu *fsmenu, FSMenuCategory category) RET_NULL
477 int ED_fsmenu_get_nentries(struct FSMenu *fsmenu, FSMenuCategory category) RET_ZERO
478 struct FSMenuEntry *ED_fsmenu_get_entry(struct FSMenu *fsmenu, FSMenuCategory category, int index) RET_NULL
479 char *ED_fsmenu_entry_get_path(struct FSMenuEntry *fsentry) RET_NULL
480 void ED_fsmenu_entry_set_path(struct FSMenuEntry *fsentry, const char *name) RET_NONE
481 char *ED_fsmenu_entry_get_name(struct FSMenuEntry *fsentry) RET_NULL
482 void ED_fsmenu_entry_set_name(struct FSMenuEntry *fsentry, const char *name) RET_NONE
483
484 struct PTCacheEdit *PE_get_current(struct Scene *scene, struct ViewLayer *view_layer, struct Object *ob) RET_NULL
485 void PE_current_changed(const struct EvaluationContext *eval_ctx, struct Scene *scene, struct Object *ob) RET_NONE
486
487 /* rna keymap */
488 struct wmKeyMap *WM_keymap_active(struct wmWindowManager *wm, struct wmKeyMap *keymap) RET_NULL
489 struct wmKeyMap *WM_keymap_find(struct wmKeyConfig *keyconf, const char *idname, int spaceid, int regionid) RET_NULL
490 struct wmKeyMapItem *WM_keymap_add_item(struct wmKeyMap *keymap, const char *idname, int type,  int val, int modifier, int keymodifier) RET_NULL
491 struct wmKeyMap *WM_keymap_list_find(ListBase *lb, const char *idname, int spaceid, int regionid) RET_NULL
492 struct wmKeyConfig *WM_keyconfig_new(struct wmWindowManager *wm, const char *idname) RET_NULL
493 struct wmKeyConfig *WM_keyconfig_new_user(struct wmWindowManager *wm, const char *idname) RET_NULL
494 bool WM_keyconfig_remove(struct wmWindowManager *wm, struct wmKeyConfig *keyconf) RET_ZERO
495 bool WM_keymap_remove(struct wmKeyConfig *keyconfig, struct wmKeyMap *keymap) RET_ZERO
496 void WM_keyconfig_set_active(struct wmWindowManager *wm, const char *idname) RET_NONE
497 bool WM_keymap_remove_item(struct wmKeyMap *keymap, struct wmKeyMapItem *kmi) RET_ZERO
498 void WM_keymap_restore_to_default(struct wmKeyMap *keymap, struct bContext *C) RET_NONE
499 void WM_keymap_restore_item_to_default(struct bContext *C, struct wmKeyMap *keymap, struct wmKeyMapItem *kmi) RET_NONE
500 void WM_keymap_properties_reset(struct wmKeyMapItem *kmi, struct IDProperty *properties) RET_NONE
501 void WM_keyconfig_update_tag(struct wmKeyMap *keymap, struct wmKeyMapItem *kmi) RET_NONE
502 int WM_keymap_item_compare(struct wmKeyMapItem *k1, struct wmKeyMapItem *k2) RET_ZERO
503 int     WM_keymap_map_type_get(struct wmKeyMapItem *kmi) RET_ZERO
504
505
506 /* rna editors */
507
508 struct FCurve *verify_fcurve(struct bAction *act, const char group[], struct PointerRNA *ptr, const char rna_path[], const int array_index, short add) RET_NULL
509 int insert_vert_fcurve(struct FCurve *fcu, float x, float y, char keytype, short flag) RET_ZERO
510 void delete_fcurve_key(struct FCurve *fcu, int index, bool do_recalc) RET_NONE
511 struct KeyingSetInfo *ANIM_keyingset_info_find_name (const char name[]) RET_NULL
512 struct KeyingSet *ANIM_scene_get_active_keyingset (struct Scene *scene) RET_NULL
513 int ANIM_scene_get_keyingset_index(struct Scene *scene, struct KeyingSet *ks) RET_ZERO
514 void ANIM_id_update(struct Scene *scene, struct ID *id) RET_NONE
515 struct ListBase builtin_keyingsets;
516 void ANIM_keyingset_info_register(struct KeyingSetInfo *ksi) RET_NONE
517 void ANIM_keyingset_info_unregister(struct Main *bmain, KeyingSetInfo *ksi) RET_NONE
518 short ANIM_validate_keyingset(struct bContext *C, struct ListBase *dsources, struct KeyingSet *ks) RET_ZERO
519 int ANIM_add_driver(struct ReportList *reports, struct ID *id, const char rna_path[], int array_index, short flag, int type) RET_ZERO
520 bool ANIM_remove_driver(struct ReportList *reports, struct ID *id, const char rna_path[], int array_index, short flag) RET_ZERO
521 void ED_space_image_release_buffer(struct SpaceImage *sima, struct ImBuf *ibuf, void *lock) RET_NONE
522 struct ImBuf *ED_space_image_acquire_buffer(struct SpaceImage *sima, void **r_lock) RET_NULL
523 void ED_space_image_get_zoom(struct SpaceImage *sima, struct ARegion *ar, float *zoomx, float *zoomy) RET_NONE
524 const char *ED_info_stats_string(struct Scene *scene, struct WorkSpace *workspace, struct ViewLayer *view_layer) RET_NULL
525 void ED_area_tag_redraw(struct ScrArea *sa) RET_NONE
526 void ED_area_tag_refresh(struct ScrArea *sa) RET_NONE
527 void ED_area_newspace(struct bContext *C, struct ScrArea *sa, int type, const bool skip_ar_exit) RET_NONE
528 void ED_region_tag_redraw(struct ARegion *ar) RET_NONE
529 void WM_event_add_fileselect(struct bContext *C, struct wmOperator *op) RET_NONE
530 void WM_cursor_wait(bool val) RET_NONE
531 void ED_node_texture_default(const struct bContext *C, struct Tex *tex) RET_NONE
532 void ED_node_tag_update_id(struct ID *id) RET_NONE
533 void ED_node_tag_update_nodetree(struct Main *bmain, struct bNodeTree *ntree, struct bNode *node) RET_NONE
534 void ED_node_tree_update(const struct bContext *C) RET_NONE
535 void ED_node_set_tree_type(struct SpaceNode *snode, struct bNodeTreeType *typeinfo) RET_NONE
536 void ED_init_custom_node_type(struct bNodeType *ntype) RET_NONE
537 void ED_init_custom_node_socket_type(struct bNodeSocketType *stype) RET_NONE
538 void ED_init_standard_node_socket_type(struct bNodeSocketType *stype) RET_NONE
539 void ED_init_node_socket_type_virtual(struct bNodeSocketType *stype) RET_NONE
540 int ED_node_tree_path_length(struct SpaceNode *snode) RET_ZERO
541 void ED_node_tree_path_get(struct SpaceNode *snode, char *value) RET_NONE
542 void ED_node_tree_path_get_fixedbuf(struct SpaceNode *snode, char *value, int max_length) RET_NONE
543 void ED_node_tree_start(struct SpaceNode *snode, struct bNodeTree *ntree, struct ID *id, struct ID *from) RET_NONE
544 void ED_node_tree_push(struct SpaceNode *snode, struct bNodeTree *ntree, struct bNode *gnode) RET_NONE
545 void ED_node_tree_pop(struct SpaceNode *snode) RET_NONE
546 int ED_view3d_view_layer_set(int lay, const int *values, int *active) RET_ZERO
547 void ED_view3d_quadview_update(struct ScrArea *sa, struct ARegion *ar, bool do_clip) RET_NONE
548 void ED_view3d_from_m4(float mat[4][4], float ofs[3], float quat[4], float *dist) RET_NONE
549 void ED_view3d_update_viewmat(const struct EvaluationContext *eval_ctx, struct Scene *scene, struct View3D *v3d, struct ARegion *ar, float viewmat[4][4], float winmat[4][4], const struct rcti *rect) RET_NONE
550 float ED_view3d_grid_scale(struct Scene *scene, struct View3D *v3d, const char **grid_unit) RET_ZERO
551 void ED_view3d_shade_update(struct Main *bmain, struct View3D *v3d, struct ScrArea *sa) RET_NONE
552 void ED_node_shader_default(const struct bContext *C, struct ID *id) RET_NONE
553 void ED_screen_animation_timer_update(struct bScreen *screen, int redraws, int refresh) RET_NONE
554 struct bScreen *ED_screen_animation_playing(const struct wmWindowManager *wm) RET_NULL
555 struct Scene *ED_screen_scene_find(const struct bScreen *screen, const struct wmWindowManager *wm) RET_NULL
556 struct Scene *ED_screen_scene_find_with_window(const struct bScreen *screen, const struct wmWindowManager *wm, struct wmWindow **r_window) RET_NULL
557 struct wmWindow *ED_screen_window_find(const struct bScreen *screen, const struct wmWindowManager *wm) RET_NULL;
558 bool ED_scene_view_layer_delete(struct Main *bmain, Scene *scene, ViewLayer *layer, ReportList *reports) RET_ZERO
559 void ED_object_base_select(struct Base *base, eObjectSelect_Mode mode) RET_NONE
560 void ED_object_base_activate(struct bContext *C, struct Base *base) RET_NONE
561 bool ED_object_modifier_remove(struct ReportList *reports, struct Main *bmain, struct Object *ob, struct ModifierData *md) RET_ZERO
562 struct ModifierData *ED_object_modifier_add(struct ReportList *reports, struct Main *bmain, struct Scene *scene, struct Object *ob, eObjectMode object_mode, const char *name, int type) RET_ZERO
563 void ED_object_modifier_clear(struct Main *bmain, struct Object *ob) RET_NONE
564 void ED_object_editmode_enter(struct bContext *C, int flag) RET_NONE
565 void ED_object_editmode_exit(struct bContext *C, int flag) RET_NONE
566 bool ED_object_editmode_load(struct Object *obedit) RET_ZERO
567 void ED_object_check_force_modifiers(struct Main *bmain, struct Scene *scene, struct Object *object, eObjectMode object_mode) RET_NONE
568 bool uiLayoutGetActive(struct uiLayout *layout) RET_ZERO
569 int uiLayoutGetOperatorContext(struct uiLayout *layout) RET_ZERO
570 int uiLayoutGetAlignment(struct uiLayout *layout) RET_ZERO
571 bool uiLayoutGetEnabled(struct uiLayout *layout) RET_ZERO
572 float uiLayoutGetScaleX(struct uiLayout *layout) RET_ZERO
573 float uiLayoutGetScaleY(struct uiLayout *layout) RET_ZERO
574 void uiLayoutSetActive(struct uiLayout *layout, bool active) RET_NONE
575 void uiLayoutSetOperatorContext(struct uiLayout *layout, int opcontext) RET_NONE
576 void uiLayoutSetEnabled(uiLayout *layout, bool enabled) RET_NONE
577 void uiLayoutSetAlignment(uiLayout *layout, char alignment) RET_NONE
578 void uiLayoutSetScaleX(struct uiLayout *layout, float scale) RET_NONE
579 void uiLayoutSetScaleY(struct uiLayout *layout, float scale) RET_NONE
580 void uiTemplateIconView(struct uiLayout *layout, struct PointerRNA *ptr, const char *propname, int show_labels, float icon_scale) RET_NONE
581 void ED_object_base_free_and_unlink(struct Main *bmain, struct Scene *scene, struct Object *base) RET_NONE
582 void ED_mesh_update(struct Mesh *mesh, struct bContext *C, int calc_edges, int calc_tessface) RET_NONE
583 void ED_mesh_vertices_add(struct Mesh *mesh, struct ReportList *reports, int count) RET_NONE
584 void ED_mesh_edges_add(struct Mesh *mesh, struct ReportList *reports, int count) RET_NONE
585 void ED_mesh_tessfaces_add(struct Mesh *mesh, struct ReportList *reports, int count) RET_NONE
586 void ED_mesh_loops_add(struct Mesh *mesh, struct ReportList *reports, int count) RET_NONE
587 void ED_mesh_polys_add(struct Mesh *mesh, struct ReportList *reports, int count) RET_NONE
588 void ED_mesh_vertices_remove(struct Mesh *mesh, struct ReportList *reports, int count) RET_NONE
589 void ED_mesh_edges_remove(struct Mesh *mesh, struct ReportList *reports, int count) RET_NONE
590 void ED_mesh_faces_remove(struct Mesh *mesh, struct ReportList *reports, int count) RET_NONE
591 int ED_mesh_color_add(struct Mesh *me, const char *name, const bool active_set) RET_MINUSONE
592 int ED_mesh_uv_texture_add(struct Mesh *me, const char *name, const bool active_set) RET_MINUSONE
593 bool ED_mesh_color_remove_named(struct Mesh *me, const char *name) RET_ZERO
594 bool ED_mesh_uv_texture_remove_named(struct Mesh *me, const char *name) RET_ZERO
595 void ED_object_constraint_dependency_update(struct Main *bmain, struct Object *ob) RET_NONE
596 void ED_object_constraint_dependency_tag_update(struct Main *bmain, struct Object *ob, struct bConstraint *con) RET_NONE
597 void ED_object_constraint_update(struct Object *ob) RET_NONE
598 void ED_object_constraint_tag_update(struct Object *ob, struct bConstraint *con) RET_NONE
599 void ED_vgroup_vert_add(struct Object *ob, struct bDeformGroup *dg, int vertnum, float weight, int assignmode) RET_NONE
600 void ED_vgroup_vert_remove(struct Object *ob, struct bDeformGroup *dg, int vertnum) RET_NONE
601 float ED_vgroup_vert_weight(struct Object *ob, struct bDeformGroup *dg, int vertnum) RET_ZERO
602 int ED_mesh_mirror_topo_table(struct Object *ob, struct DerivedMesh *dm, char mode) RET_ZERO
603 int ED_mesh_mirror_spatial_table(struct Object *ob, struct BMEditMesh *em, struct DerivedMesh *dm, const float co[3], char mode) RET_ZERO
604
605 float ED_rollBoneToVector(EditBone *bone, const float new_up_axis[3], const bool axis_only) RET_ZERO
606 void ED_space_image_get_size(struct SpaceImage *sima, int *width, int *height) RET_NONE
607 bool ED_space_image_check_show_maskedit(struct SpaceImage *sima, const struct WorkSpace *workspace, struct ViewLayer *view_layer) RET_ZERO
608
609 bool ED_texture_context_check_world(const struct bContext *C) RET_ZERO
610 bool ED_texture_context_check_material(const struct bContext *C) RET_ZERO
611 bool ED_texture_context_check_lamp(const struct bContext *C) RET_ZERO
612 bool ED_texture_context_check_particles(const struct bContext *C) RET_ZERO
613 bool ED_texture_context_check_others(const struct bContext *C) RET_ZERO
614
615 bool ED_text_region_location_from_cursor(SpaceText *st, ARegion *ar, const int cursor_co[2], int r_pixel_co[2]) RET_ZERO
616
617 SnapObjectContext *ED_transform_snap_object_context_create(
618         struct Main *bmain, struct Scene *scene, struct ViewLayer *view_layer, struct RenderEngineType *engine, int flag) RET_NULL
619 SnapObjectContext *ED_transform_snap_object_context_create_view3d(
620         struct Main *bmain, struct Scene *scene, struct ViewLayer *view_layer, struct RenderEngineType *engine, int flag,
621         const struct ARegion *ar, const struct View3D *v3d) RET_NULL
622 void ED_transform_snap_object_context_destroy(SnapObjectContext *sctx) RET_NONE
623 bool ED_transform_snap_object_project_ray_ex(
624         struct SnapObjectContext *sctx,
625         const struct SnapObjectParams *params,
626         const float ray_start[3], const float ray_normal[3], float *ray_depth,
627         /* return args */
628         float r_loc[3], float r_no[3], int *r_index,
629         struct Object **r_ob, float r_obmat[4][4]) RET_ZERO
630 void BIF_selectTransformOrientationValue(struct View3D *v3d, int orientation) RET_NONE
631
632 void ED_lattice_editlatt_make(struct Object *obedit) RET_NONE
633 void ED_lattice_editlatt_load(struct Object *obedit) RET_NONE
634
635 void ED_curve_editnurb_load(struct Object *obedit) RET_NONE
636 void ED_curve_editnurb_make(struct Object *obedit) RET_NONE
637
638
639 void uiItemR(uiLayout *layout, struct PointerRNA *ptr, const char *propname, int flag, const char *name, int icon) RET_NONE
640
641 void uiItemFullO(uiLayout *layout, const char *idname, const char *name, int icon, struct IDProperty *properties, int context, int flag, struct PointerRNA *r_opptr) RET_NONE
642 void uiItemFullO_ptr(struct uiLayout *layout, struct wmOperatorType *ot, const char *name, int icon, struct IDProperty *properties, int context, int flag, struct PointerRNA *r_opptr) RET_NONE
643 void uiItemFullOMenuHold_ptr( uiLayout *layout, struct wmOperatorType *ot, const char *name, int icon, struct IDProperty *properties, int context, int flag, const char *menu_id,  /* extra menu arg. */ PointerRNA *r_opptr) RET_NONE
644 struct uiLayout *uiLayoutRow(uiLayout *layout, int align) RET_NULL
645 struct uiLayout *uiLayoutColumn(uiLayout *layout, int align) RET_NULL
646 struct uiLayout *uiLayoutColumnFlow(uiLayout *layout, int number, int align) RET_NULL
647 struct uiLayout *uiLayoutBox(struct uiLayout *layout) RET_NULL
648 struct uiLayout *uiLayoutSplit(uiLayout *layout, float percentage, int align) RET_NULL
649 bool uiLayoutGetRedAlert(struct uiLayout *layout) RET_ZERO
650 void uiLayoutSetRedAlert(uiLayout *layout, bool redalert) RET_NONE
651 void uiItemsEnumR(uiLayout *layout, struct PointerRNA *ptr, const char *propname) RET_NONE
652 void uiItemMenuEnumR_prop(uiLayout *layout, struct PointerRNA *ptr, PropertyRNA *prop, const char *name, int icon) RET_NONE
653 void uiItemMenuEnumR(uiLayout *layout, struct PointerRNA *ptr, const char *propname, const char *name, int icon) RET_NONE
654 void uiItemEnumR_string(uiLayout *layout, struct PointerRNA *ptr, const char *propname, const char *value, const char *name, int icon) RET_NONE
655 void uiItemPointerR(uiLayout *layout, struct PointerRNA *ptr, const char *propname, struct PointerRNA *searchptr, const char *searchpropname, const char *name, int icon) RET_NONE
656 void uiItemsEnumO(uiLayout *layout, const char *opname, const char *propname) RET_NONE
657 void uiItemEnumO_string(uiLayout *layout, const char *name, int icon, const char *opname, const char *propname, const char *value) RET_NONE
658 void uiItemMenuEnumO(uiLayout *layout, struct bContext *C, const char *opname, const char *propname, const char *name, int icon) RET_NONE
659 void uiItemMenuEnumO_ptr(uiLayout *layout, struct bContext *C, struct wmOperatorType *ot, const char *propname, const char *name, int icon) RET_NONE
660 void uiItemBooleanO(uiLayout *layout, const char *name, int icon, const char *opname, const char *propname, int value) RET_NONE
661 void uiItemIntO(uiLayout *layout, const char *name, int icon, const char *opname, const char *propname, int value) RET_NONE
662 void uiItemFloatO(uiLayout *layout, const char *name, int icon, const char *opname, const char *propname, float value) RET_NONE
663 void uiItemStringO(uiLayout *layout, const char *name, int icon, const char *opname, const char *propname, const char *value) RET_NONE
664 void uiItemL(struct uiLayout *layout, const char *name, int icon) RET_NONE
665 void uiItemM(uiLayout *layout, struct bContext *C, const char *menuname, const char *name, int icon) RET_NONE
666 void uiItemS(struct uiLayout *layout) RET_NONE
667 void uiItemFullR(uiLayout *layout, struct PointerRNA *ptr, struct PropertyRNA *prop, int index, int value, int flag, const char *name, int icon) RET_NONE
668 void uiLayoutSetContextPointer(uiLayout *layout, const char *name, struct PointerRNA *ptr) RET_NONE
669 const char *uiLayoutIntrospect(uiLayout *layout) RET_NULL
670 void UI_reinit_font(void) RET_NONE
671 int UI_rnaptr_icon_get(struct bContext *C, struct PointerRNA *ptr, int rnaicon, const bool big) RET_ZERO
672 struct bTheme *UI_GetTheme(void) RET_NULL
673 void UI_GetThemeColor3fv(int colorid, float col[4]) RET_NONE
674 void UI_GetThemeColor4fv(int colorid, float col[4]) RET_NONE
675 void UI_GetThemeColorShade4fv(int colorid, int offset, float col[4]) RET_NONE
676 void UI_GetThemeColorShadeAlpha4fv(int colorid, int coloffset, int alphaoffset, float col[4]) RET_NONE
677 void UI_GetThemeColorBlendShade3fv(int colorid1, int colorid2, float fac, int offset, float col[3]) RET_NONE
678 void UI_GetThemeColorBlendShade4fv(int colorid1, int colorid2, float fac, int offset, float col[4]) RET_NONE
679 void UI_GetThemeColorBlend3ubv(int colorid1, int colorid2, float fac, unsigned char col[3]) RET_NONE
680 void UI_GetThemeColorShadeAlpha4ubv(int colorid, int coloffset, int alphaoffset, unsigned char col[4]) RET_NONE
681
682 /* rna template */
683 void uiTemplateAnyID(uiLayout *layout, struct PointerRNA *ptr, const char *propname, const char *proptypename, const char *text) RET_NONE
684 void uiTemplatePathBuilder(uiLayout *layout, struct PointerRNA *ptr, const char *propname, struct PointerRNA *root_ptr, const char *text) RET_NONE
685 void uiTemplateHeader(struct uiLayout *layout, struct bContext *C) RET_NONE
686 void uiTemplateID(uiLayout *layout, struct bContext *C, struct PointerRNA *ptr, const char *propname, const char *newop, const char *openop, const char *unlinkop, int filter) RET_NONE
687 struct uiLayout *uiTemplateModifier(uiLayout *layout, struct bContext *C, struct PointerRNA *ptr) RET_NULL
688 struct uiLayout *uiTemplateConstraint(struct uiLayout *layout, struct PointerRNA *ptr) RET_NULL
689 void uiTemplatePreview(struct uiLayout *layout, struct bContext *C, struct ID *id, int show_buttons, struct ID *parent,
690                        struct MTex *slot, const char *preview_id) RET_NONE
691 void uiTemplateIDPreview(uiLayout *layout, struct bContext *C, struct PointerRNA *ptr, const char *propname, const char *newop, const char *openop, const char *unlinkop, int rows, int cols, int filter) RET_NONE
692 void uiTemplateSearch(
693         uiLayout *layout, struct bContext *C,
694         PointerRNA *ptr, const char *propname,
695         PointerRNA *searchptr, const char *searchpropname,
696         const char *newop, const char *unlinkop) RET_NONE
697 void uiTemplateSearchPreview(
698         uiLayout *layout, struct bContext *C,
699         PointerRNA *ptr, const char *propname,
700         PointerRNA *searchptr, const char *searchpropname,
701         const char *newop, const char *unlinkop,
702         const int rows, const int cols) RET_NONE
703 void uiTemplateCurveMapping(uiLayout *layout, struct PointerRNA *ptr, const char *propname, int type, int levels, int brush, int neg_slope) RET_NONE
704 void uiTemplateColorRamp(uiLayout *layout, struct PointerRNA *ptr, const char *propname, int expand) RET_NONE
705 void uiTemplateLayers(uiLayout *layout, struct PointerRNA *ptr, const char *propname, PointerRNA *used_ptr, const char *used_propname, int active_layer) RET_NONE
706 void uiTemplateImageLayers(struct uiLayout *layout, struct bContext *C, struct Image *ima, struct ImageUser *iuser) RET_NONE
707 void uiTemplateList(struct uiLayout *layout, struct bContext *C, const char *listtype_name, const char *list_id,
708                     PointerRNA *dataptr, const char *propname, PointerRNA *active_dataptr, const char *active_propname,
709                     const char *item_dyntip_propname, int rows, int maxrows, int layout_type, int columns) RET_NONE
710 void uiTemplateRunningJobs(struct uiLayout *layout, struct bContext *C) RET_NONE
711 void uiTemplateOperatorSearch(struct uiLayout *layout) RET_NONE
712 void uiTemplateHeader3D(struct uiLayout *layout, struct bContext *C) RET_NONE
713 void uiTemplateEditModeSelection(struct uiLayout *layout, struct bContext *C) RET_NONE
714 void uiTemplateImage(uiLayout *layout, struct bContext *C, struct PointerRNA *ptr, const char *propname, struct PointerRNA *userptr, int compact, int multiview) RET_NONE
715 void uiTemplateColorPicker(uiLayout *layout, struct PointerRNA *ptr, const char *propname, int value_slider, int lock, int lock_luminosity, int cubic) RET_NONE
716 void uiTemplateHistogram(uiLayout *layout, struct PointerRNA *ptr, const char *propname) RET_NONE
717 void uiTemplateReportsBanner(uiLayout *layout, struct bContext *C) RET_NONE
718 void uiTemplateWaveform(uiLayout *layout, struct PointerRNA *ptr, const char *propname) RET_NONE
719 void uiTemplateVectorscope(uiLayout *layout, struct PointerRNA *ptr, const char *propname) RET_NONE
720 void uiTemplateNodeLink(struct uiLayout *layout, struct bNodeTree *ntree, struct bNode *node, struct bNodeSocket *input) RET_NONE
721 void uiTemplateNodeView(struct uiLayout *layout, struct bContext *C, struct bNodeTree *ntree, struct bNode *node, struct bNodeSocket *input) RET_NONE
722 void uiTemplateTextureUser(struct uiLayout *layout, struct bContext *C) RET_NONE
723 void uiTemplateTextureShow(struct uiLayout *layout, struct bContext *C, struct PointerRNA *ptr, struct PropertyRNA *prop) RET_NONE
724 void uiTemplateKeymapItemProperties(struct uiLayout *layout, struct PointerRNA *ptr) RET_NONE
725 void uiTemplateOverrideProperty(struct uiLayout *layout, struct PointerRNA *collection_props_ptr, struct PointerRNA *scene_props_ptr, const char *propname, const char *name, const char *text_ctxt, int translate, int icon, const char *custom_template) RET_NONE
726 void uiTemplateMovieClip(struct uiLayout *layout, struct bContext *C, struct PointerRNA *ptr, const char *propname, int compact) RET_NONE
727 void uiTemplateMovieclipInformation(struct uiLayout *layout, struct PointerRNA *ptr, const char *propname, struct PointerRNA *userptr) RET_NONE
728 void uiTemplateTrack(struct uiLayout *layout, struct PointerRNA *ptr, const char *propname) RET_NONE
729 void uiTemplateMarker(struct uiLayout *layout, struct PointerRNA *ptr, const char *propname, PointerRNA *userptr, PointerRNA *trackptr, int compact) RET_NONE
730 void uiTemplateImageSettings(uiLayout *layout, struct PointerRNA *imfptr, int color_management) RET_NONE
731 void uiTemplateColorspaceSettings(struct uiLayout *layout, struct PointerRNA *ptr, const char *propname) RET_NONE
732 void uiTemplateColormanagedViewSettings(struct uiLayout *layout, struct bContext *C, struct PointerRNA *ptr, const char *propname) RET_NONE
733 void uiTemplateComponentMenu(struct uiLayout *layout, struct PointerRNA *ptr, const char *propname, const char *name) RET_NONE
734 void uiTemplateNodeSocket(struct uiLayout *layout, struct bContext *C, float *color) RET_NONE
735 void uiTemplatePalette(struct uiLayout *layout, struct PointerRNA *ptr, const char *propname, int color) RET_NONE
736 void uiTemplateImageStereo3d(struct uiLayout *layout, struct PointerRNA *stereo3d_format_ptr) RET_NONE
737 void uiTemplateCacheFile(uiLayout *layout, struct bContext *C, struct PointerRNA *ptr, const char *propname) RET_NONE
738
739 /* rna render */
740 struct RenderResult *RE_engine_begin_result(RenderEngine *engine, int x, int y, int w, int h, const char *layername, const char *viewname) RET_NULL
741 struct RenderResult *RE_AcquireResultRead(struct Render *re) RET_NULL
742 struct RenderResult *RE_AcquireResultWrite(struct Render *re) RET_NULL
743 struct RenderResult *RE_engine_get_result(struct RenderEngine *re) RET_NULL
744 struct RenderStats *RE_GetStats(struct Render *re) RET_NULL
745 struct RenderData *RE_engine_get_render_data(struct Render *re) RET_NULL
746 void RE_engine_update_result(struct RenderEngine *engine, struct RenderResult *result) RET_NONE
747 void RE_engine_update_progress(struct RenderEngine *engine, float progress) RET_NONE
748 void RE_engine_set_error_message(RenderEngine *engine, const char *msg) RET_NONE
749 void RE_engine_add_pass(RenderEngine *engine, const char *name, int channels, const char *chan_id, const char *layername) RET_NONE
750 void RE_engine_end_result(RenderEngine *engine, struct RenderResult *result, int cancel, int highlight, int merge_results) RET_NONE
751 void RE_engine_update_stats(RenderEngine *engine, const char *stats, const char *info) RET_NONE
752 void RE_layer_load_from_file(struct RenderLayer *layer, struct ReportList *reports, const char *filename, int x, int y) RET_NONE
753 void RE_result_load_from_file(struct RenderResult *result, struct ReportList *reports, const char *filename) RET_NONE
754 void RE_AcquireResultImage(struct Render *re, struct RenderResult *rr, const int view_id) RET_NONE
755 void RE_ReleaseResult(struct Render *re) RET_NONE
756 void RE_ReleaseResultImage(struct Render *re) RET_NONE
757 int RE_engine_test_break(struct RenderEngine *engine) RET_ZERO
758 void RE_engines_init() RET_NONE
759 void RE_engines_exit() RET_NONE
760 void RE_engines_register(struct Main *bmain, RenderEngineType *render_type) RET_NONE
761 void RE_engine_report(struct RenderEngine *engine, int type, const char *msg) RET_NONE
762 ListBase R_engines = {NULL, NULL};
763 void RE_engine_free(struct RenderEngine *engine) RET_NONE
764 struct RenderEngineType *RE_engines_find(const char *idname) RET_NULL
765 void RE_engine_update_memory_stats(struct RenderEngine *engine, float mem_used, float mem_peak) RET_NONE
766 struct RenderEngine *RE_engine_create(struct RenderEngineType *type) RET_NULL
767 void RE_engine_frame_set(struct RenderEngine *engine, int frame, float subframe) RET_NONE
768 void RE_FreePersistentData(void) RET_NONE
769 void RE_point_density_cache(struct Scene *scene, struct ViewLayer *view_layer, struct PointDensity *pd, const bool use_render_params) RET_NONE
770 void RE_point_density_minmax(struct Scene *scene, struct ViewLayer *view_layer, struct PointDensity *pd, const bool use_render_params, float r_min[3], float r_max[3]) RET_NONE
771 void RE_point_density_sample(struct Scene *scene, struct ViewLayer *view_layer, struct PointDensity *pd, const int resolution, const bool use_render_params, float *values) RET_NONE
772 void RE_point_density_free(struct PointDensity *pd) RET_NONE
773 void RE_instance_get_particle_info(struct ObjectInstanceRen *obi, float *index, float *age, float *lifetime, float co[3], float *size, float vel[3], float angvel[3]) RET_NONE
774 void RE_FreeAllPersistentData(void) RET_NONE
775 float RE_fresnel_dielectric(float incoming[3], float normal[3], float eta) RET_ZERO
776 void RE_engine_register_pass(struct RenderEngine *engine, struct Scene *scene, struct ViewLayer *view_layer, const char *name, int channels, const char *chanid, int type) RET_NONE
777 struct ViewLayer *RE_engine_get_view_layer(struct Render *re) RET_NULL
778 void RE_SetDepsgraph(struct Render *re, struct Depsgraph *graph) RET_NONE
779
780 /* Draw */
781 void OBJECT_collection_settings_create(struct IDProperty *properties) RET_NONE
782 void EDIT_MESH_collection_settings_create(struct IDProperty *properties) RET_NONE
783 void EDIT_ARMATURE_collection_settings_create(struct IDProperty *properties) RET_NONE
784 void PAINT_WEIGHT_collection_settings_create(struct IDProperty *properties) RET_NONE
785 void PAINT_VERTEX_collection_settings_create(struct IDProperty *properties) RET_NONE
786
787 /* python */
788 struct wmOperatorType *WM_operatortype_find(const char *idname, bool quiet) RET_NULL
789 void WM_operatortype_iter(struct GHashIterator *ghi) RET_NONE
790 struct wmOperatorTypeMacro *WM_operatortype_macro_define(struct wmOperatorType *ot, const char *idname) RET_NULL
791 int WM_operator_call_py(struct bContext *C, struct wmOperatorType *ot, short context, struct PointerRNA *properties, struct ReportList *reports, const bool is_undo) RET_ZERO
792 void WM_operatortype_remove_ptr(struct wmOperatorType *ot) RET_NONE
793 bool WM_operatortype_remove(const char *idname) RET_ZERO
794 int WM_operator_poll(struct bContext *C, struct wmOperatorType *ot) RET_ZERO
795 int WM_operator_poll_context(struct bContext *C, struct wmOperatorType *ot, short context) RET_ZERO
796 int WM_operator_props_popup(struct bContext *C, struct wmOperator *op, const struct wmEvent *event) RET_ZERO
797 void WM_operator_properties_free(struct PointerRNA *ptr) RET_NONE
798 void WM_operator_properties_create(struct PointerRNA *ptr, const char *opstring) RET_NONE
799 void WM_operator_properties_create_ptr(struct PointerRNA *ptr, struct wmOperatorType *ot) RET_NONE
800 void WM_operator_properties_sanitize(struct PointerRNA *ptr, const bool no_context) RET_NONE
801 void WM_operatortype_append_ptr(void (*opfunc)(struct wmOperatorType *, void *), void *userdata) RET_NONE
802 void WM_operatortype_append_macro_ptr(void (*opfunc)(struct wmOperatorType *, void *), void *userdata) RET_NONE
803 void WM_operator_bl_idname(char *to, const char *from) RET_NONE
804 void WM_operator_py_idname(char *to, const char *from) RET_NONE
805 bool WM_operator_py_idname_ok_or_report(struct ReportList *reports, const char *classname, const char *idname) RET_ZERO
806 int WM_operator_ui_popup(struct bContext *C, struct wmOperator *op, int width, int height) RET_ZERO
807 void update_autoflags_fcurve(struct FCurve *fcu, struct bContext *C, struct ReportList *reports, struct PointerRNA *ptr) RET_NONE
808 short insert_keyframe(struct ReportList *reports, struct ID *id, struct bAction *act, const char group[], const char rna_path[], int array_index, float cfra, char keytype, short flag) RET_ZERO
809 short delete_keyframe(struct ReportList *reports, struct ID *id, struct bAction *act, const char group[], const char rna_path[], int array_index, float cfra, short flag) RET_ZERO
810 struct bAction *verify_adt_action(struct ID *id, short add) RET_NULL
811 char *WM_operator_pystring_ex(struct bContext *C, struct wmOperator *op, const bool all_args, const bool macro_args, struct wmOperatorType *ot, struct PointerRNA *opptr) RET_NULL
812 char *WM_operator_pystring(struct bContext *C, struct wmOperator *op, const bool all_args, const bool macro_args) RET_NULL
813 struct wmKeyMapItem *WM_modalkeymap_add_item(struct wmKeyMap *km, int type, int val, int modifier, int keymodifier, int value) RET_NULL
814 struct wmKeyMapItem *WM_modalkeymap_add_item_str(struct wmKeyMap *km, int type, int val, int modifier, int keymodifier, const char *value) RET_NULL
815 struct wmKeyMap *WM_modalkeymap_add(struct wmKeyConfig *keyconf, const char *idname, const struct EnumPropertyItem *items) RET_NULL
816 struct uiPopupMenu *UI_popup_menu_begin(struct bContext *C, const char *title, int icon) RET_NULL
817 void UI_popup_menu_end(struct bContext *C, struct uiPopupMenu *head) RET_NONE
818 struct uiLayout *UI_popup_menu_layout(struct uiPopupMenu *head) RET_NULL
819 struct uiLayout *UI_pie_menu_layout(struct uiPieMenu *pie) RET_NULL
820 int UI_pie_menu_invoke(struct bContext *C, const char *idname, const struct wmEvent *event) RET_ZERO
821 struct uiPieMenu *UI_pie_menu_begin(struct bContext *C, const char *title, int icon, const struct wmEvent *event) RET_NULL
822 void UI_pie_menu_end(struct bContext *C, uiPieMenu *pie) RET_NONE
823 struct uiLayout *uiLayoutRadial(struct uiLayout *layout) RET_NULL
824 int UI_pie_menu_invoke_from_operator_enum(struct bContext *C, const char *title, const char *opname,
825                              const char *propname, const struct wmEvent *event) RET_ZERO
826
827 /* RNA COLLADA dependency */
828 int collada_export(const struct EvaluationContext *eval_ctx,
829                    struct Scene *sce,
830                    struct ViewLayer *view_layer,
831                    const char *filepath,
832                    int apply_modifiers,
833                    BC_export_mesh_type export_mesh_type,
834
835                    int selected,
836                    int include_children,
837                    int include_armatures,
838                    int include_shapekeys,
839                    int deform_bones_only,
840
841                    int active_uv_only,
842                    int include_material_textures,
843                    int use_texture_copies,
844
845                    int triangulate,
846                    int use_object_instantiation,
847                    int use_blender_profile,
848                    int sort_by_name,
849                    BC_export_transformation_type export_transformation_type,
850                    int open_sim,
851                    int limit_precision,
852                    int keep_bind_info) RET_ZERO
853
854 void ED_mesh_calc_tessface(struct Mesh *mesh, bool free_mpoly) RET_NONE
855
856 /* bpy/python internal api */
857 extern void BPY_RNA_operator_wrapper(struct wmOperatorType *ot, void *userdata);
858 extern void BPY_RNA_operator_macro_wrapper(struct wmOperatorType *ot, void *userdata);
859 void BPY_RNA_operator_wrapper(struct wmOperatorType *ot, void *userdata) RET_NONE
860 void BPY_RNA_operator_macro_wrapper(struct wmOperatorType *ot, void *userdata) RET_NONE
861 void BPY_text_free_code(struct Text *text) RET_NONE
862 void BPY_id_release(struct ID *id) RET_NONE
863 void BPY_DECREF_RNA_INVALIDATE(void *pyob_ptr) RET_NONE
864 int BPY_context_member_get(struct bContext *C, const char *member, struct bContextDataResult *result) RET_ZERO
865 void BPY_pyconstraint_target(struct bPythonConstraint *con, struct bConstraintTarget *ct) RET_NONE
866 float BPY_driver_exec(PathResolvedRNA *anim_rna, struct ChannelDriver *driver, const float evaltime) RET_ZERO /* might need this one! */
867 void BPY_DECREF(void *pyob_ptr) RET_NONE
868 void BPY_pyconstraint_exec(struct bPythonConstraint *con, struct bConstraintOb *cob, struct ListBase *targets) RET_NONE
869 bool pyrna_id_FromPyObject(struct PyObject *obj, struct ID **id) RET_ZERO
870 struct PyObject *pyrna_id_CreatePyObject(struct ID *id) RET_NULL
871 bool pyrna_id_CheckPyObject(struct PyObject *obj) RET_ZERO
872 void BPY_context_update(struct bContext *C) RET_NONE
873 const char *BPY_app_translations_py_pgettext(const char *msgctxt, const char *msgid) RET_ARG(msgid)
874
875 /* intern/dualcon */
876
877 void *dualcon(const DualConInput *input_mesh,
878               /* callbacks for output */
879               DualConAllocOutput alloc_output,
880               DualConAddVert add_vert,
881               DualConAddQuad add_quad,
882
883               DualConFlags flags,
884               DualConMode mode,
885               float threshold,
886               float hermite_num,
887               float scale,
888               int depth) RET_ZERO
889
890 /* compositor */
891 void COM_execute(RenderData *rd, Scene *scene, bNodeTree *editingtree, int rendering,
892                  const ColorManagedViewSettings *viewSettings, const ColorManagedDisplaySettings *displaySettings,
893                  const char *viewName) RET_NONE
894
895 /*multiview*/
896 bool RE_RenderResult_is_stereo(RenderResult *res) RET_ZERO
897 void uiTemplateImageViews(uiLayout *layout, struct PointerRNA *imfptr) RET_NONE
898
899 #endif // WITH_GAMEENGINE