[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18794] branches/blender2.5/blender/source /blender: RNA: C API
Revision: 18794 http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18794 Author: blendix Date: 2009-02-02 20:57:57 +0100 (Mon, 02 Feb 2009) Log Message: --- RNA: C API * RNA_blender.h is now generated along with the other files. It is not used anywhere yet, and still located quite hidden next to the other rna_*_gen.c files. Read only access for now. * Inherited properties are not copied from the base anymore but iterated over. Patch by Vekoon, thanks! * Array get/set callbacks now do the whole array instead of getting an index. This is needed for some layers for example so python can set the array as a whole, otherwise the check that one layer has to be enabled at all times gets in the way. Also nicer for the C API. * Also some changes to returning pointers to make the API cleaner, got rid of the type() callback and instead let get() return PointerRNA with the type included. The C API looks like this currently: http://users.pandora.be/blendix/RNA_blender.h Modified Paths: -- branches/blender2.5/blender/source/blender/blenkernel/intern/anim_sys.c branches/blender2.5/blender/source/blender/blenkernel/intern/fcurve.c branches/blender2.5/blender/source/blender/editors/animation/keyframing.c branches/blender2.5/blender/source/blender/editors/interface/interface.c branches/blender2.5/blender/source/blender/editors/space_outliner/outliner.c branches/blender2.5/blender/source/blender/makesrna/RNA_access.h branches/blender2.5/blender/source/blender/makesrna/RNA_define.h branches/blender2.5/blender/source/blender/makesrna/RNA_types.h branches/blender2.5/blender/source/blender/makesrna/intern/makesrna.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_access.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_armature.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_brush.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_cloth.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_color.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_curve.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_define.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_group.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_internal.h branches/blender2.5/blender/source/blender/makesrna/intern/rna_internal_types.h branches/blender2.5/blender/source/blender/makesrna/intern/rna_key.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_lamp.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_lattice.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_main.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_material.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_mesh.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_modifier.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_nodetree.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_object.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_rna.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_scene.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_screen.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_sequence.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_sound.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_space.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_text.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_userdef.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_wm.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_world.c branches/blender2.5/blender/source/blender/python/intern/bpy_rna.c Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/anim_sys.c === --- branches/blender2.5/blender/source/blender/blenkernel/intern/anim_sys.c 2009-02-02 19:31:43 UTC (rev 18793) +++ branches/blender2.5/blender/source/blender/blenkernel/intern/anim_sys.c 2009-02-02 19:57:57 UTC (rev 18794) @@ -200,19 +200,19 @@ { case PROP_BOOLEAN: if (RNA_property_array_length(&new_ptr, prop)) - RNA_property_boolean_set_array(&new_ptr, prop, array_index, (int)value); + RNA_property_boolean_set_index(&new_ptr, prop, array_index, (int)value); else RNA_property_boolean_set(&new_ptr, prop, (int)value);
[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18795] branches/blender2.5/blender/source /blender/editors/mesh/mesh_intern.h: Fix for select multi loop commit, probably missed this file.
Revision: 18795 http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18795 Author: blendix Date: 2009-02-02 20:59:22 +0100 (Mon, 02 Feb 2009) Log Message: --- Fix for select multi loop commit, probably missed this file. Modified Paths: -- branches/blender2.5/blender/source/blender/editors/mesh/mesh_intern.h Modified: branches/blender2.5/blender/source/blender/editors/mesh/mesh_intern.h === --- branches/blender2.5/blender/source/blender/editors/mesh/mesh_intern.h 2009-02-02 19:57:57 UTC (rev 18794) +++ branches/blender2.5/blender/source/blender/editors/mesh/mesh_intern.h 2009-02-02 19:59:22 UTC (rev 18795) @@ -192,6 +192,7 @@ void MESH_OT_select_random(struct wmOperatorType *ot); void MESH_OT_vertices_to_sphere(struct wmOperatorType *ot); void MESH_OT_selection_type(struct wmOperatorType *ot); +void MESH_OT_select_multi_loop(struct wmOperatorType *ot); extern EditEdge *findnearestedge(ViewContext *vc, int *dist); extern void EM_automerge(int update); ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org http://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18793] branches/blender2.5/blender/source /blender/editors/mesh: 2.5
Revision: 18793 http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18793 Author: ton Date: 2009-02-02 20:31:43 +0100 (Mon, 02 Feb 2009) Log Message: --- 2.5 Editmesh ops: - MESH_OT_select_multi_loop (based on selection it makes loops) - MESH_OT_select_linked added boolean 'limit' for linked limited by seams - MESH_OT_select_linked_pick same as above The 'limit' option used to work only for facemode, with a toolsettings option. So it had no own hotkey... i made it work for edges & vertices too, need to find hotkey later. Modified Paths: -- branches/blender2.5/blender/source/blender/editors/mesh/editmesh_mods.c branches/blender2.5/blender/source/blender/editors/mesh/mesh_ops.c Modified: branches/blender2.5/blender/source/blender/editors/mesh/editmesh_mods.c === --- branches/blender2.5/blender/source/blender/editors/mesh/editmesh_mods.c 2009-02-02 16:30:03 UTC (rev 18792) +++ branches/blender2.5/blender/source/blender/editors/mesh/editmesh_mods.c 2009-02-02 19:31:43 UTC (rev 18793) @@ -1912,11 +1912,14 @@ } } -void loop_multiselect(EditMesh *em, int looptype) +static int loop_multiselect(bContext *C, wmOperator *op) { + Object *obedit= CTX_data_edit_object(C); + EditMesh *em= ((Mesh *)obedit->data)->edit_mesh; EditEdge *eed; EditEdge **edarray; int edindex, edfirstcount; + int looptype= RNA_boolean_get(op->ptr, "ring"); /* sets em->totedgesel */ EM_nedges_selected(em); @@ -1948,7 +1951,28 @@ } MEM_freeN(edarray); // if (EM_texFaceCheck()) + + WM_event_add_notifier(C, NC_OBJECT|ND_GEOM_SELECT, obedit); + return OPERATOR_FINISHED; } + +void MESH_OT_select_multi_loop(wmOperatorType *ot) +{ + /* identifiers */ + ot->name= "Multi Select Loops"; + ot->idname= "MESH_OT_select_multi_loop"; + + /* api callbacks */ + ot->exec= loop_multiselect; + ot->poll= ED_operator_editmesh; + + /* flags */ + ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO; + + /* properties */ + RNA_def_boolean(ot->srna, "ring", 0, "Ring", ""); +} + /* * MAIN MOUSE SELECTION ** */ @@ -2207,79 +2231,121 @@ } -// XXX should we use CTX_scene(C)->selectmode & SCE_SELECT_FACE like it was in the past ? calls selectconnected_delimit_mesh_all if true -void selectconnected_mesh_all(EditMesh *em) +/* *** select linked * */ + +/* for use with selectconnected_delimit_mesh only! */ +#define is_edge_delimit_ok(eed) ((eed->tmp.l == 1) && (eed->seam==0)) +#define is_face_tag(efa) is_edge_delimit_ok(efa->e1) || is_edge_delimit_ok(efa->e2) || is_edge_delimit_ok(efa->e3) || (efa->v4 && is_edge_delimit_ok(efa->e4)) + +#define face_tag(efa)\ +if(efa->v4)efa->tmp.l= efa->e1->tmp.l= efa->e2->tmp.l= efa->e3->tmp.l= efa->e4->tmp.l= 1;\ +else efa->tmp.l= efa->e1->tmp.l= efa->e2->tmp.l= efa->e3->tmp.l= 1; + +/* all - 1) use all faces for extending the selection 2) only use the mouse face +* sel - 1) select 0) deselect +* */ + +/* legacy warning, this function combines too much :) */ +static int select_linked_limited_invoke(ViewContext *vc, short all, short sel) { - EditVert *v1,*v2; + EditMesh *em= vc->em; + EditFace *efa; EditEdge *eed; - short done=1, toggle=0; - - if(em->edges.first==0) return; + EditVert *eve; + short done=1, change=0; + if(em->faces.first==0) return OPERATOR_CANCELLED; + + /* flag all edges+faces as off*/ + for(eed= em->edges.first; eed; eed= eed->next) + eed->tmp.l=0; + + for(efa= em->faces.first; efa; efa= efa->next) { + efa->tmp.l = 0; + } + + if (all) { + // XXX verts? + for(eed= em->edges.first; eed; eed= eed->next) { + if(eed->f & SELECT) + eed->tmp.l= 1; + } + for(efa= em->faces.first; efa; efa= efa->next) { + + if (efa->f & SELECT) { + face_tag(efa); + } else { + efa->tmp.l = 0; + } + } + } + else { + if( unified_findnearest(vc, &eve, &eed, &efa) ) { + + if(efa) { + efa->tmp.l = 1; + face_tag(efa); + } + else if(eed) + eed->tmp.l= 1; + else { + for(eed= em->edges.first; eed; eed= eed->next) +
[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18789] branches/blender2.5/blender/source /blender: Animato RNA wrapping:
Revision: 18789 http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18789 Author: aligorith Date: 2009-02-02 12:51:10 +0100 (Mon, 02 Feb 2009) Log Message: --- Animato RNA wrapping: It's about time that the RNA wrapping for various parts of the animation system were cleaned up for my recent changes. I've moved some code around (and/or deleted a file or two) in the process. Modified Paths: -- branches/blender2.5/blender/source/blender/blenkernel/intern/anim_sys.c branches/blender2.5/blender/source/blender/blenkernel/intern/ipo.c branches/blender2.5/blender/source/blender/editors/animation/anim_ipo_utils.c branches/blender2.5/blender/source/blender/editors/space_outliner/outliner.c branches/blender2.5/blender/source/blender/makesdna/DNA_anim_types.h branches/blender2.5/blender/source/blender/makesdna/DNA_curve_types.h branches/blender2.5/blender/source/blender/makesrna/RNA_access.h branches/blender2.5/blender/source/blender/makesrna/intern/makesrna.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_ID.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_action.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_camera.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_curve.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_fluidsim.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_internal.h branches/blender2.5/blender/source/blender/makesrna/intern/rna_key.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_lattice.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_main.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_material.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_mesh.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_meta.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_object.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_pose.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_sequence.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_sound.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_space.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_texture.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_userdef.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_world.c Removed Paths: - branches/blender2.5/blender/source/blender/makesrna/intern/rna_ipo.c Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/anim_sys.c === --- branches/blender2.5/blender/source/blender/blenkernel/intern/anim_sys.c 2009-02-02 03:25:23 UTC (rev 18788) +++ branches/blender2.5/blender/source/blender/blenkernel/intern/anim_sys.c 2009-02-02 11:51:10 UTC (rev 18789) @@ -448,7 +448,7 @@ /* allocate new eval-strip for this strip + add to stack */ - nes= MEM_callocN(sizeof(NlaEvalStrip), "bNlaEvalStrip"); + nes= MEM_callocN(sizeof(NlaEvalStrip), "NlaEvalStrip"); nes->track= nlt; nes->strip= astrip; @@ -473,7 +473,7 @@ /* write the accumulated settings to */ static void nladata_flush_channels (PointerRNA *ptr, ListBase *channels) { - + } /* -- */ Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/ipo.c === --- branches/blender2.5/blender/source/blender/blenkernel/intern/ipo.c 2009-02-02 03:25:23 UTC (rev 18788) +++ branches/blender2.5/blender/source/blender/blenkernel/intern/ipo.c 2009-02-02 11:51:10 UTC (rev 18789) @@ -287,14 +287,13 @@ case AC_QUAT_Z: *array_index= 3; return "rotation"; -#if 0 // XXX these were not 'official' channels (i.e. not in bf-releases)... these will need separate wrapping to work... case AC_EUL_X: - *array_index= 0; return "rotation"; + *array_index= 0; return "euler_rotation"; case AC_EUL_Y: - *array_index= 1; return "rotation"; + *array_index= 1; return "euler_rotation"; case AC_EUL_Z: - *array_index= 2; return "rotation"; -#endif + *array_index= 2; return "euler_rotation"; + case -1: // XXX special case for rotation drivers... until eulers are added... *array_index= 0; return "rotation"; @@ -937,7 +936,7 @@ fcurve= fcu; /* set
[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18792] branches/blender2.5/blender/source /blender: 2.5
Revision: 18792 http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18792 Author: ton Date: 2009-02-02 17:30:03 +0100 (Mon, 02 Feb 2009) Log Message: --- 2.5 Bugfix: mouse key checks should use KM_PRESS checks now. Interface toggle button didnt work for that reason. :) Modified Paths: -- branches/blender2.5/blender/source/blender/editors/interface/interface_handlers.c branches/blender2.5/blender/source/blender/editors/interface/interface_panel.c branches/blender2.5/blender/source/blender/windowmanager/intern/wm_operators.c Modified: branches/blender2.5/blender/source/blender/editors/interface/interface_handlers.c === --- branches/blender2.5/blender/source/blender/editors/interface/interface_handlers.c 2009-02-02 15:39:37 UTC (rev 18791) +++ branches/blender2.5/blender/source/blender/editors/interface/interface_handlers.c 2009-02-02 16:30:03 UTC (rev 18792) @@ -1239,7 +1239,7 @@ retval= WM_UI_HANDLER_BREAK; break; case LEFTMOUSE: { - if(event->val) { + if(event->val==KM_PRESS) { mx= event->x; my= event->y; ui_window_to_block(data->region, block, &mx, &my); @@ -1261,7 +1261,7 @@ } } - if(event->val) { + if(event->val==KM_PRESS) { switch (event->type) { case VKEY: case XKEY: @@ -1506,7 +1506,7 @@ static int ui_do_but_BUT(bContext *C, uiBut *but, uiHandleButtonData *data, wmEvent *event) { if(data->state == BUTTON_STATE_HIGHLIGHT) { - if(event->type == LEFTMOUSE && event->val) { + if(event->type == LEFTMOUSE && event->val==KM_PRESS) { button_activate_state(C, but, BUTTON_STATE_WAIT_RELEASE); return WM_UI_HANDLER_BREAK; } @@ -1514,13 +1514,13 @@ button_activate_state(C, but, BUTTON_STATE_EXIT); return WM_UI_HANDLER_BREAK; } - else if(ELEM(event->type, PADENTER, RETKEY) && event->val) { + else if(ELEM(event->type, PADENTER, RETKEY) && event->val==KM_PRESS) { button_activate_state(C, but, BUTTON_STATE_WAIT_FLASH); return WM_UI_HANDLER_BREAK; } } else if(data->state == BUTTON_STATE_WAIT_RELEASE) { - if(event->type == LEFTMOUSE && event->val==0) { + if(event->type == LEFTMOUSE && event->val!=KM_PRESS) { if(!(but->flag & UI_SELECT)) data->cancel= 1; button_activate_state(C, but, BUTTON_STATE_EXIT); @@ -1534,7 +1534,7 @@ static int ui_do_but_KEYEVT(bContext *C, uiBut *but, uiHandleButtonData *data, wmEvent *event) { if(data->state == BUTTON_STATE_HIGHLIGHT) { - if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->val) { + if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->val==KM_PRESS) { button_activate_state(C, but, BUTTON_STATE_WAIT_KEY_EVENT); return WM_UI_HANDLER_BREAK; } @@ -1543,7 +1543,7 @@ if(event->type == MOUSEMOVE) return WM_UI_HANDLER_CONTINUE; - if(event->val) { + if(event->val==KM_PRESS) { if(WM_key_event_string(event->type)[0]) ui_set_but_val(but, event->type); else @@ -1559,7 +1559,7 @@ static int ui_do_but_TEX(bContext *C, uiBlock *block, uiBut *but, uiHandleButtonData *data, wmEvent *event) { if(data->state == BUTTON_STATE_HIGHLIGHT) { - if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->val) { + if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->val==KM_PRESS) { button_activate_state(C, but, BUTTON_STATE_TEXT_EDITING); return WM_UI_HANDLER_BREAK; } @@ -1579,7 +1579,7 @@ static int ui_do_but_TOG(bContext *C, uiBut *but, uiHandleButtonData *data, wmEvent *event) { if(data->state == BUTTON_STATE_HIGHLIGHT) { - if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->val) { + if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->val==KM_PRESS) { data->togdual= event->ctrl; data->togonly= !event->shift; button_activate_state(C, but, BUTTON_STATE_EXIT); @@ -1592,7 +1592,7 @@ static int ui_do_but_EXIT(bContext *C, uiBut *but, uiHandleButtonData *da
[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18791] branches/blender2.5/blender/source /blender/windowmanager: 2.5
Revision: 18791 http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18791 Author: ton Date: 2009-02-02 16:39:37 +0100 (Mon, 02 Feb 2009) Log Message: --- 2.5 Small bugfix, key-release event should be only set after a tweak fails. Such keymap items better not respond to any key-release! Modified Paths: -- branches/blender2.5/blender/source/blender/windowmanager/WM_types.h branches/blender2.5/blender/source/blender/windowmanager/intern/wm_operators.c Modified: branches/blender2.5/blender/source/blender/windowmanager/WM_types.h === --- branches/blender2.5/blender/source/blender/windowmanager/WM_types.h 2009-02-02 14:13:14 UTC (rev 18790) +++ branches/blender2.5/blender/source/blender/windowmanager/WM_types.h 2009-02-02 15:39:37 UTC (rev 18791) @@ -103,8 +103,9 @@ /* val */ #define KM_ANY -1 -#define KM_RELEASE 0 +#define KM_NOTHING 0 #define KM_PRESS 1 +#define KM_RELEASE 2 /* ** UI Handler * */ Modified: branches/blender2.5/blender/source/blender/windowmanager/intern/wm_operators.c === --- branches/blender2.5/blender/source/blender/windowmanager/intern/wm_operators.c 2009-02-02 14:13:14 UTC (rev 18790) +++ branches/blender2.5/blender/source/blender/windowmanager/intern/wm_operators.c 2009-02-02 15:39:37 UTC (rev 18791) @@ -774,6 +774,7 @@ /* when tweak fails we should give the other keymap entries a chance * those then won't react to km_press, but km_release * it sets hidden event value where tweak maps fail on, to prevent loops */ + event->val= KM_RELEASE; //event->val= 1; //event->no_tweak= 1; } ___ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org http://lists.blender.org/mailman/listinfo/bf-blender-cvs
[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18790] branches/blender2.5/blender/source /blender: 2.5
Revision: 18790 http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18790 Author: ton Date: 2009-02-02 15:13:14 +0100 (Mon, 02 Feb 2009) Log Message: --- 2.5 Sanitized the 'tweak' event. Original idea was to have WM event system generating it automatically. However, I first tested it via a handler and operator, to check what kind of configurations would be useful. It appeared to not work nice, also because that inserting a tweak operator in a keymap is confusing. Now 'tweaks' are generated automatically, and can be catched by keymaps as any event. The current definition of tweak is: - if Left/Middle/Rightmouse pressed if event wasn't handled by window queue (modal handlers) start checking mousepositions - while mousepositions are checked - escape on any event other than mouse - on mouse events: - add tweak event if mousemove > 10 pixels - stop checking for tweak if mousebutton released - Tweak events have a define indicating mousebutton used EVT_TWEAK_L, EVT_TWEAK_M, EVT_TWEAK_R - In keymap definitions you can use _S or _A to map to action or select mouse userdef. - Event value in keymap should be KM_ANY for all tweaks, or use one of the eight directions: EVT_GESTURE_E, _SE, _S, _SW, _W, _NW, _N, _NE - And of course you can add modifier checks in keymaps for it. - Because tweaks are a result of mouse events, the handlers get both to evaluate. That means that RMB-select + tweak will work correctly. In case you don't want both to be handled, for example the CTRL+LMB 'extrude' and CTRL+LMB-tweak 'lasso select', you will need to set the first acting on a EVT_RELEASE, this event only gets passed on when tweak fails. The current system allows all options, configurable, we had in 2.48, and many more! A diagram of what's possible is on the todo. :) Also in this commit: lasso select editmesh failed with 'zbuffer occluded select'. Also circle-select failed. Modified Paths: -- branches/blender2.5/blender/source/blender/blenloader/intern/readfile.c branches/blender2.5/blender/source/blender/editors/animation/anim_markers.c branches/blender2.5/blender/source/blender/editors/mesh/editmesh_mods.c branches/blender2.5/blender/source/blender/editors/mesh/mesh_ops.c branches/blender2.5/blender/source/blender/editors/space_action/action_ops.c branches/blender2.5/blender/source/blender/editors/space_ipo/ipo_ops.c branches/blender2.5/blender/source/blender/editors/space_node/node_ops.c branches/blender2.5/blender/source/blender/editors/space_sequencer/sequencer_ops.c branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_ops.c branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_select.c branches/blender2.5/blender/source/blender/editors/uvedit/uvedit_ops.c branches/blender2.5/blender/source/blender/makesdna/DNA_windowmanager_types.h branches/blender2.5/blender/source/blender/windowmanager/WM_types.h branches/blender2.5/blender/source/blender/windowmanager/intern/wm_event_system.c branches/blender2.5/blender/source/blender/windowmanager/intern/wm_keymap.c branches/blender2.5/blender/source/blender/windowmanager/intern/wm_operators.c branches/blender2.5/blender/source/blender/windowmanager/wm.h Modified: branches/blender2.5/blender/source/blender/blenloader/intern/readfile.c === --- branches/blender2.5/blender/source/blender/blenloader/intern/readfile.c 2009-02-02 11:51:10 UTC (rev 18789) +++ branches/blender2.5/blender/source/blender/blenloader/intern/readfile.c 2009-02-02 14:13:14 UTC (rev 18790) @@ -3945,11 +3945,13 @@ win->ghostwin= NULL; win->eventstate= NULL; win->curswin= NULL; - + win->tweak= NULL; + win->timers.first= win->timers.last= NULL; win->queue.first= win->queue.last= NULL; win->handlers.first= win->handlers.last= NULL; win->subwindows.first= win->subwindows.last= NULL; + win->gesture.first= win->gesture.last= NULL; win->drawdata= NULL; win->drawmethod= -1; Modified: branches/blender2.5/blender/source/blender/editors/animation/anim_markers.c === --- branches/blender2.5/blender/source/blender/editors/animation/anim_markers.c 2009-02-02 11:51:10 UTC (rev 18789) +++ branches/blender2.5/blender/source/blender/editors/animation/anim_markers.c 2009-02-02 14:13:14 UTC (rev 18790) @@ -889,7 +889,4 @@ WM_keymap_add_item(keymap, "MARKER_OT_move", GKEY, KM_PRESS, 0, 0); - /* generates event, needs to be after select to work */ - WM_keymap_tweak(keymap, SELECTMOUSE, KM_PRESS, 0, 0); - } Modified: branches/b
[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18796] branches/blender2.5/blender/source /blender/editors: 2.5
Revision: 18796 http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18796 Author: mfoxdogg Date: 2009-02-03 04:54:03 +0100 (Tue, 03 Feb 2009) Log Message: --- 2.5 *** - rebuilt most of the view menu with a couple empty sub menus - seperators go all screwy when there is an unknown operator in the menu - using this method, the operators invoke function is skipped, this is evident with clipping border and border zoom - original menus are still in the code just if'd out for furture reference and such - to cater for this menu, view numpad op has been made into much smaller atomic operators, pan and orbit and the ortho/persp toggle has been put into individual operators - fixed the mem leak in the make parent menu Modified Paths: -- branches/blender2.5/blender/source/blender/editors/object/object_edit.c branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_edit.c branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_header.c branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_intern.h branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_ops.c Modified: branches/blender2.5/blender/source/blender/editors/object/object_edit.c === --- branches/blender2.5/blender/source/blender/editors/object/object_edit.c 2009-02-02 19:59:22 UTC (rev 18795) +++ branches/blender2.5/blender/source/blender/editors/object/object_edit.c 2009-02-03 03:54:03 UTC (rev 18796) @@ -2473,7 +2473,7 @@ uiPupMenuEnd(C, head); - return OPERATOR_RUNNING_MODAL; + return OPERATOR_CANCELLED; } Modified: branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_edit.c === --- branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_edit.c 2009-02-02 19:59:22 UTC (rev 18795) +++ branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_edit.c 2009-02-03 03:54:03 UTC (rev 18796) @@ -1315,16 +1315,7 @@ {V3D_VIEW_RIGHT, "RIGHT", "Right", "View From the Right"}, {V3D_VIEW_TOP, "TOP", "Top", "View From the Top"}, {V3D_VIEW_BOTTOM, "BOTTOM", "Bottom", "View From the Bottom"}, - {V3D_VIEW_PERSPORTHO, "PERSPORTHO", "Persp-Ortho", "Switch between Perspecive and Orthographic View"}, {V3D_VIEW_CAMERA, "CAMERA", "Camera", "View From the active amera"}, - {V3D_VIEW_STEPLEFT, "STEPLEFT", "Step Left", "Step the view around to the Left"}, - {V3D_VIEW_STEPRIGHT, "STEPRIGHT", "Step Right", "Step the view around to the Right"}, - {V3D_VIEW_STEPUP, "STEPUP", "Step Up", "Step the view Up"}, - {V3D_VIEW_STEPDOWN, "STEPDOWN", "Step Down", "Step the view Down"}, - {V3D_VIEW_PANLEFT, "PANLEFT", "Pan Left", "Pan the view to the Left"}, - {V3D_VIEW_PANRIGHT, "PANRIGHT", "Pan Right", "Pan the view to the Right"}, - {V3D_VIEW_PANUP, "PANUP", "Pan Up", "Pan the view Up"}, - {V3D_VIEW_PANDOWN, "PANDOWN", "Pan Down", "Pan the view Down"}, {0, NULL, NULL, NULL}}; static void axis_set_view(bContext *C, float q1, float q2, float q3, float q4, short view, int perspo) @@ -1371,14 +1362,11 @@ } - static int viewnumpad_exec(bContext *C, wmOperator *op) { - ARegion *ar= CTX_wm_region(C); View3D *v3d = CTX_wm_view3d(C); RegionView3D *rv3d= CTX_wm_region_view3d(C); Scene *scene= CTX_data_scene(C); - float phi, si, q1[4], vec[3]; static int perspo=V3D_PERSP; int viewnum; @@ -1411,16 +1399,6 @@ axis_set_view(C, 0.5, -0.5, -0.5, -0.5, viewnum, perspo); break; - case V3D_VIEW_PERSPORTHO: - if(rv3d->viewlock==0) { - if(rv3d->persp!=V3D_ORTHO) - rv3d->persp=V3D_ORTHO; - else rv3d->persp=V3D_PERSP; - - ED_region_tag_redraw(ar); - } - break; - case V3D_VIEW_CAMERA: if(rv3d->viewlock==0) { /* lastview - */ @@ -1464,91 +1442,177 @@ } break; - case V3D_VIEW_STEPLEFT: - case V3D_VIEW_STEPRIGHT: - case V3D_VIEW_STEPUP: - case V3D_VIEW_STEPDOWN: - if(rv3d->viewlock==0) { + default : + break; + } - if(rv3d->persp != V3D_CAMOB) { - if(viewnum == V3D_VIEW_STEPLEFT || viewnum == V3D_VIEW_STEPRIGHT) { - /* z
[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18797] branches/bmesh/blender: merge with 2.5 at r18796.
Revision: 18797 http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18797 Author: joeedh Date: 2009-02-03 07:22:30 +0100 (Tue, 03 Feb 2009) Log Message: --- merge with 2.5 at r18796. note I've customized the vc9 project files a bit, they won't compile blender by themselves anymore (I use scons for that). Modified Paths: -- branches/bmesh/blender/projectfiles_vc9/blender/editors/ED_editors.vcproj branches/bmesh/blender/projectfiles_vc9/blender/windowmanager/windowmanager.vcproj branches/bmesh/blender/source/blender/blenkernel/BKE_context.h branches/bmesh/blender/source/blender/blenkernel/BKE_global.h branches/bmesh/blender/source/blender/blenkernel/BKE_screen.h branches/bmesh/blender/source/blender/blenkernel/intern/action.c branches/bmesh/blender/source/blender/blenkernel/intern/anim_sys.c branches/bmesh/blender/source/blender/blenkernel/intern/blender.c branches/bmesh/blender/source/blender/blenkernel/intern/context.c branches/bmesh/blender/source/blender/blenkernel/intern/fcurve.c branches/bmesh/blender/source/blender/blenkernel/intern/ipo.c branches/bmesh/blender/source/blender/blenkernel/intern/mesh.c branches/bmesh/blender/source/blender/blenloader/intern/readfile.c branches/bmesh/blender/source/blender/bmesh/bmesh_operators.h branches/bmesh/blender/source/blender/bmesh/intern/bmesh_mods.c branches/bmesh/blender/source/blender/bmesh/intern/editmesh_to_bmesh.c branches/bmesh/blender/source/blender/bmesh/operators/subdivideop.c branches/bmesh/blender/source/blender/editors/animation/anim_channels.c branches/bmesh/blender/source/blender/editors/animation/anim_ipo_utils.c branches/bmesh/blender/source/blender/editors/animation/anim_markers.c branches/bmesh/blender/source/blender/editors/animation/anim_ops.c branches/bmesh/blender/source/blender/editors/animation/keyframing.c branches/bmesh/blender/source/blender/editors/armature/armature_intern.h branches/bmesh/blender/source/blender/editors/armature/editarmature.c branches/bmesh/blender/source/blender/editors/armature/poseobject.c branches/bmesh/blender/source/blender/editors/curve/editfont.c branches/bmesh/blender/source/blender/editors/include/ED_armature.h branches/bmesh/blender/source/blender/editors/include/ED_screen.h branches/bmesh/blender/source/blender/editors/include/ED_util.h branches/bmesh/blender/source/blender/editors/include/ED_view3d.h branches/bmesh/blender/source/blender/editors/interface/interface.c branches/bmesh/blender/source/blender/editors/interface/interface_handlers.c branches/bmesh/blender/source/blender/editors/interface/interface_panel.c branches/bmesh/blender/source/blender/editors/mesh/editface.c branches/bmesh/blender/source/blender/editors/mesh/editmesh.c branches/bmesh/blender/source/blender/editors/mesh/editmesh_add.c branches/bmesh/blender/source/blender/editors/mesh/editmesh_lib.c branches/bmesh/blender/source/blender/editors/mesh/editmesh_mods.c branches/bmesh/blender/source/blender/editors/mesh/editmesh_tools.c branches/bmesh/blender/source/blender/editors/mesh/mesh_intern.h branches/bmesh/blender/source/blender/editors/object/editgroup.c branches/bmesh/blender/source/blender/editors/object/object_edit.c branches/bmesh/blender/source/blender/editors/screen/screen_context.c branches/bmesh/blender/source/blender/editors/screen/screen_intern.h branches/bmesh/blender/source/blender/editors/screen/screen_ops.c branches/bmesh/blender/source/blender/editors/sculpt/sculpt.c branches/bmesh/blender/source/blender/editors/space_action/action_edit.c branches/bmesh/blender/source/blender/editors/space_action/action_ops.c branches/bmesh/blender/source/blender/editors/space_action/action_select.c branches/bmesh/blender/source/blender/editors/space_api/spacetypes.c branches/bmesh/blender/source/blender/editors/space_file/file_draw.c branches/bmesh/blender/source/blender/editors/space_file/file_ops.c branches/bmesh/blender/source/blender/editors/space_file/fsmenu.c branches/bmesh/blender/source/blender/editors/space_image/image_ops.c branches/bmesh/blender/source/blender/editors/space_image/space_image.c branches/bmesh/blender/source/blender/editors/space_ipo/ipo_edit.c branches/bmesh/blender/source/blender/editors/space_ipo/ipo_ops.c branches/bmesh/blender/source/blender/editors/space_node/node_edit.c branches/bmesh/blender/source/blender/editors/space_node/node_header.c branches/bmesh/blender/source/blender/editors/space_node/node_ops.c branches/bmesh/blender/source/blender/editors/space_node/node_select.c branches/bmesh/blender/source/blender/editors/space_node/node_state.c branches/bmesh/blender/source/blender/editors/space_node/space_node.c branches/bmesh/blender/source/blender/editors/space_outliner