Revision: 23230 http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=23230 Author: blendix Date: 2009-09-14 21:12:29 +0200 (Mon, 14 Sep 2009)
Log Message: ----------- 2.5 Bugfixes #19345: can't get out of grayed out pointer field. #19342: item_pointerR fields can't be cleared with one item. #19341: fix hanging tooltips when manipulating regions. #19339: context panel still allowed tabbing, but it has no header. #19334: editing SSS settings crashed previewrender. #19330: object mode could not be switched on from the header menu. Modified Paths: -------------- trunk/blender/source/blender/blenkernel/intern/material.c trunk/blender/source/blender/blenloader/intern/readfile.c trunk/blender/source/blender/editors/include/ED_screen.h trunk/blender/source/blender/editors/interface/interface_handlers.c trunk/blender/source/blender/editors/interface/interface_panel.c trunk/blender/source/blender/editors/interface/interface_regions.c trunk/blender/source/blender/editors/object/object_edit.c trunk/blender/source/blender/editors/screen/area.c trunk/blender/source/blender/editors/screen/screen_ops.c trunk/blender/source/blender/editors/space_file/file_ops.c trunk/blender/source/blender/editors/space_graph/graph_buttons.c trunk/blender/source/blender/editors/space_image/image_buttons.c trunk/blender/source/blender/editors/space_logic/logic_buttons.c trunk/blender/source/blender/editors/space_nla/nla_buttons.c trunk/blender/source/blender/editors/space_sequencer/sequencer_buttons.c trunk/blender/source/blender/editors/space_text/text_header.c trunk/blender/source/blender/editors/space_view3d/space_view3d.c trunk/blender/source/blender/editors/space_view3d/view3d_buttons.c trunk/blender/source/blender/editors/space_view3d/view3d_snap.c trunk/blender/source/blender/editors/space_view3d/view3d_toolbar.c trunk/blender/source/blender/render/intern/source/pipeline.c trunk/blender/source/blender/render/intern/source/sss.c Modified: trunk/blender/source/blender/blenkernel/intern/material.c =================================================================== --- trunk/blender/source/blender/blenkernel/intern/material.c 2009-09-14 17:22:51 UTC (rev 23229) +++ trunk/blender/source/blender/blenkernel/intern/material.c 2009-09-14 19:12:29 UTC (rev 23230) @@ -159,9 +159,9 @@ ma->sss_radius[0]= 1.0f; ma->sss_radius[1]= 1.0f; ma->sss_radius[2]= 1.0f; - ma->sss_col[0]= 0.8f; - ma->sss_col[1]= 0.8f; - ma->sss_col[2]= 0.8f; + ma->sss_col[0]= 1.0f; + ma->sss_col[1]= 1.0f; + ma->sss_col[2]= 1.0f; ma->sss_error= 0.05f; ma->sss_scale= 0.1f; ma->sss_ior= 1.3f; Modified: trunk/blender/source/blender/blenloader/intern/readfile.c =================================================================== --- trunk/blender/source/blender/blenloader/intern/readfile.c 2009-09-14 17:22:51 UTC (rev 23229) +++ trunk/blender/source/blender/blenloader/intern/readfile.c 2009-09-14 19:12:29 UTC (rev 23230) @@ -4861,6 +4861,10 @@ QUATCOPY(rv3d->viewquat, v3d->viewquat); } } + + /* this was not initialized correct always */ + if(v3d->twtype == 0) + v3d->twtype= V3D_MANIP_TRANSLATE; } static void direct_link_screen(FileData *fd, bScreen *sc) @@ -9687,6 +9691,11 @@ /* put 2.50 compatibility code here until next subversion bump */ { + Scene *sce; + + for(sce = main->scene.first; sce; sce = sce->id.next) + if(sce->unit.scale_length == 0.0f) + sce->unit.scale_length= 1.0f; } /* WATCH IT!!!: pointers from libdata have not been converted yet here! */ Modified: trunk/blender/source/blender/editors/include/ED_screen.h =================================================================== --- trunk/blender/source/blender/editors/include/ED_screen.h 2009-09-14 17:22:51 UTC (rev 23229) +++ trunk/blender/source/blender/editors/include/ED_screen.h 2009-09-14 19:12:29 UTC (rev 23230) @@ -58,6 +58,7 @@ void ED_region_panels(const struct bContext *C, struct ARegion *ar, int vertical, char *context, int contextnr); void ED_region_header_init(struct ARegion *ar); void ED_region_header(const struct bContext *C, struct ARegion *ar); +void ED_region_toggle_hidden(struct bContext *C, struct ARegion *ar); void region_scissor_winrct(struct ARegion *ar, struct rcti *winrct); /* spaces */ Modified: trunk/blender/source/blender/editors/interface/interface_handlers.c =================================================================== --- trunk/blender/source/blender/editors/interface/interface_handlers.c 2009-09-14 17:22:51 UTC (rev 23229) +++ trunk/blender/source/blender/editors/interface/interface_handlers.c 2009-09-14 19:12:29 UTC (rev 23230) @@ -1440,16 +1440,20 @@ for(but= actbut->next; but; but= but->next) { if(ELEM7(but->type, TEX, NUM, NUMABS, NUMSLI, HSVSLI, IDPOIN, SEARCH_MENU)) { - data->postbut= but; - data->posttype= BUTTON_ACTIVATE_TEXT_EDITING; - return; + if(!(but->flag & UI_BUT_DISABLED)) { + data->postbut= but; + data->posttype= BUTTON_ACTIVATE_TEXT_EDITING; + return; + } } } for(but= block->buttons.first; but!=actbut; but= but->next) { if(ELEM7(but->type, TEX, NUM, NUMABS, NUMSLI, HSVSLI, IDPOIN, SEARCH_MENU)) { - data->postbut= but; - data->posttype= BUTTON_ACTIVATE_TEXT_EDITING; - return; + if(!(but->flag & UI_BUT_DISABLED)) { + data->postbut= but; + data->posttype= BUTTON_ACTIVATE_TEXT_EDITING; + return; + } } } } @@ -1464,16 +1468,20 @@ for(but= actbut->prev; but; but= but->prev) { if(ELEM7(but->type, TEX, NUM, NUMABS, NUMSLI, HSVSLI, IDPOIN, SEARCH_MENU)) { - data->postbut= but; - data->posttype= BUTTON_ACTIVATE_TEXT_EDITING; - return; + if(!(but->flag & UI_BUT_DISABLED)) { + data->postbut= but; + data->posttype= BUTTON_ACTIVATE_TEXT_EDITING; + return; + } } } for(but= block->buttons.last; but!=actbut; but= but->prev) { if(ELEM7(but->type, TEX, NUM, NUMABS, NUMSLI, HSVSLI, IDPOIN, SEARCH_MENU)) { - data->postbut= but; - data->posttype= BUTTON_ACTIVATE_TEXT_EDITING; - return; + if(!(but->flag & UI_BUT_DISABLED)) { + data->postbut= but; + data->posttype= BUTTON_ACTIVATE_TEXT_EDITING; + return; + } } } } Modified: trunk/blender/source/blender/editors/interface/interface_panel.c =================================================================== --- trunk/blender/source/blender/editors/interface/interface_panel.c 2009-09-14 17:22:51 UTC (rev 23229) +++ trunk/blender/source/blender/editors/interface/interface_panel.c 2009-09-14 19:12:29 UTC (rev 23230) @@ -990,6 +990,7 @@ } if(pasel==NULL || palap==NULL) return; + if(palap->type && palap->type->flag & PNL_NO_HEADER) return; /* the overlapped panel becomes a tab */ palap->paneltab= pasel; Modified: trunk/blender/source/blender/editors/interface/interface_regions.c =================================================================== --- trunk/blender/source/blender/editors/interface/interface_regions.c 2009-09-14 17:22:51 UTC (rev 23229) +++ trunk/blender/source/blender/editors/interface/interface_regions.c 2009-09-14 19:12:29 UTC (rev 23230) @@ -758,7 +758,7 @@ data->active= a+1; if(cpoin) cpoin[0]= '|'; } - if(data->items.totitem==1) + if(data->items.totitem==1 && but->editstr[0]) data->active= 1; } Modified: trunk/blender/source/blender/editors/object/object_edit.c =================================================================== --- trunk/blender/source/blender/editors/object/object_edit.c 2009-09-14 17:22:51 UTC (rev 23229) +++ trunk/blender/source/blender/editors/object/object_edit.c 2009-09-14 19:12:29 UTC (rev 23230) @@ -1957,29 +1957,26 @@ ObjectMode mode = RNA_enum_get(op->ptr, "mode"); if(ob) { + if(mode == OB_MODE_OBJECT) + return 1; + switch(ob->type) { - case OB_EMPTY: - case OB_LAMP: - case OB_CAMERA: - if(mode & OB_MODE_OBJECT) - return 1; - return 0; case OB_MESH: - if(mode & ( OB_MODE_OBJECT|OB_MODE_EDIT|OB_MODE_SCULPT|OB_MODE_VERTEX_PAINT|OB_MODE_WEIGHT_PAINT|OB_MODE_TEXTURE_PAINT|OB_MODE_PARTICLE_EDIT)) + if(mode & (OB_MODE_EDIT|OB_MODE_SCULPT|OB_MODE_VERTEX_PAINT|OB_MODE_WEIGHT_PAINT|OB_MODE_TEXTURE_PAINT|OB_MODE_PARTICLE_EDIT)) return 1; return 0; case OB_CURVE: case OB_SURF: case OB_FONT: case OB_MBALL: - if(mode & (OB_MODE_OBJECT|OB_MODE_EDIT)) + if(mode & (OB_MODE_EDIT)) return 1; return 0; case OB_LATTICE: - if(mode & (OB_MODE_OBJECT|OB_MODE_EDIT|OB_MODE_WEIGHT_PAINT)) + if(mode & (OB_MODE_EDIT|OB_MODE_WEIGHT_PAINT)) return 1; case OB_ARMATURE: - if(mode & (OB_MODE_OBJECT|OB_MODE_EDIT|OB_MODE_POSE)) + if(mode & (OB_MODE_EDIT|OB_MODE_POSE)) return 1; } } @@ -2036,7 +2033,7 @@ /* flags */ ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO; - prop= RNA_def_enum(ot->srna, "mode", object_mode_items, 0, "Mode", ""); + prop= RNA_def_enum(ot->srna, "mode", object_mode_items, OB_MODE_OBJECT, "Mode", ""); RNA_def_enum_funcs(prop, object_mode_set_itemsf); RNA_def_boolean(ot->srna, "toggle", 0, "Toggle", ""); Modified: trunk/blender/source/blender/editors/screen/area.c =================================================================== --- trunk/blender/source/blender/editors/screen/area.c 2009-09-14 17:22:51 UTC (rev 23229) +++ trunk/blender/source/blender/editors/screen/area.c 2009-09-14 19:12:29 UTC (rev 23230) @@ -916,7 +916,20 @@ } +void ED_region_toggle_hidden(bContext *C, ARegion *ar) +{ + ScrArea *sa= CTX_wm_area(C); + ar->flag ^= RGN_FLAG_HIDDEN; + ar->v2d.flag &= ~V2D_IS_INITIALISED; /* XXX should become hide/unhide api? */ + + if(ar->flag & RGN_FLAG_HIDDEN) + WM_event_remove_handlers(C, &ar->handlers); + + ED_area_initialize(CTX_wm_manager(C), CTX_wm_window(C), sa); + ED_area_tag_redraw(sa); +} + /* sa2 to sa1, we swap spaces for fullscreen to keep all allocated data */ /* area vertices were set */ void area_copy_data(ScrArea *sa1, ScrArea *sa2, int swap_space) Modified: trunk/blender/source/blender/editors/screen/screen_ops.c =================================================================== --- trunk/blender/source/blender/editors/screen/screen_ops.c 2009-09-14 17:22:51 UTC (rev 23229) +++ trunk/blender/source/blender/editors/screen/screen_ops.c 2009-09-14 19:12:29 UTC (rev 23230) @@ -1320,10 +1320,11 @@ CLAMP(rmd->ar->type->minsizex, 0, 1000); if(rmd->ar->type->minsizex < 24) { rmd->ar->type->minsizex= rmd->origval; - rmd->ar->flag |= RGN_FLAG_HIDDEN; + if(!(rmd->ar->flag & RGN_FLAG_HIDDEN)) + ED_region_toggle_hidden(C, rmd->ar); } - else - rmd->ar->flag &= ~RGN_FLAG_HIDDEN; + else if(rmd->ar->flag & RGN_FLAG_HIDDEN) + ED_region_toggle_hidden(C, rmd->ar); } else { delta= event->y - rmd->origy; @@ -1332,10 +1333,11 @@ CLAMP(rmd->ar->type->minsizey, 0, 1000); if(rmd->ar->type->minsizey < 24) { rmd->ar->type->minsizey= rmd->origval; - rmd->ar->flag |= RGN_FLAG_HIDDEN; + if(!(rmd->ar->flag & RGN_FLAG_HIDDEN)) + ED_region_toggle_hidden(C, rmd->ar); } - else - rmd->ar->flag &= ~RGN_FLAG_HIDDEN; + else if(rmd->ar->flag & RGN_FLAG_HIDDEN) + ED_region_toggle_hidden(C, rmd->ar); } WM_event_add_notifier(C, NC_SCREEN|NA_EDITED, NULL); @@ -1346,7 +1348,7 @@ if(event->val==0) { if(ABS(event->x - rmd->origx) < 2 && ABS(event->y - rmd->origy) < 2) { - rmd->ar->flag ^= RGN_FLAG_HIDDEN; + ED_region_toggle_hidden(C, rmd->ar); WM_event_add_notifier(C, NC_SCREEN|NA_EDITED, NULL); } MEM_freeN(op->customdata); Modified: trunk/blender/source/blender/editors/space_file/file_ops.c =================================================================== --- trunk/blender/source/blender/editors/space_file/file_ops.c 2009-09-14 17:22:51 UTC (rev 23229) +++ trunk/blender/source/blender/editors/space_file/file_ops.c 2009-09-14 19:12:29 UTC (rev 23230) @@ -855,13 +855,9 @@ ScrArea *sa= CTX_wm_area(C); ARegion *ar= file_buttons_region(sa); - if(ar) { - ar->flag ^= RGN_FLAG_HIDDEN; - ar->v2d.flag &= ~V2D_IS_INITIALISED; /* XXX should become hide/unhide api? */ - - ED_area_initialize(CTX_wm_manager(C), CTX_wm_window(C), sa); - ED_area_tag_redraw(sa); - } + if(ar) + ED_region_toggle_hidden(C, ar); + return OPERATOR_FINISHED; } Modified: trunk/blender/source/blender/editors/space_graph/graph_buttons.c =================================================================== @@ Diff output truncated at 10240 characters. @@ _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org http://lists.blender.org/mailman/listinfo/bf-blender-cvs