Revision: 23751 http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=23751 Author: blendix Date: 2009-10-10 00:00:33 +0200 (Sat, 10 Oct 2009)
Log Message: ----------- Add reload button for image textures. Modified Paths: -------------- trunk/blender/source/blender/editors/space_image/image_buttons.c trunk/blender/source/blender/editors/space_image/image_ops.c Modified: trunk/blender/source/blender/editors/space_image/image_buttons.c =================================================================== --- trunk/blender/source/blender/editors/space_image/image_buttons.c 2009-10-09 21:50:33 UTC (rev 23750) +++ trunk/blender/source/blender/editors/space_image/image_buttons.c 2009-10-09 22:00:33 UTC (rev 23751) @@ -943,6 +943,8 @@ cb->prop= prop; cb->iuser= iuser; + uiLayoutSetContextPointer(layout, "edit_image", &imaptr); + if(!compact) uiTemplateID(layout, C, ptr, propname, "IMAGE_OT_new", "IMAGE_OT_open", NULL); @@ -992,9 +994,9 @@ uiItemR(row, NULL, 0, &imaptr, "source", (compact)? 0: UI_ITEM_R_EXPAND); if(ima->source != IMA_SRC_GENERATED) { - row= uiLayoutRow(layout, 0); + row= uiLayoutRow(layout, 1); uiItemR(row, "", 0, &imaptr, "filename", 0); - //uiItemO(row, "Reload", 0, "image.reload"); + uiItemO(row, "", ICON_FILE_REFRESH, "image.reload"); } // XXX what was this for? Modified: trunk/blender/source/blender/editors/space_image/image_ops.c =================================================================== --- trunk/blender/source/blender/editors/space_image/image_ops.c 2009-10-09 21:50:33 UTC (rev 23750) +++ trunk/blender/source/blender/editors/space_image/image_ops.c 2009-10-09 22:00:33 UTC (rev 23751) @@ -108,6 +108,11 @@ sima_zoom_set(sima, ar, sima->zoom*zoomfac); } +static int image_poll(bContext *C) +{ + return (CTX_data_edit_image(C) != NULL); +} + static int space_image_poll(bContext *C) { SpaceImage *sima= CTX_wm_space_image(C); @@ -1070,19 +1075,16 @@ static int reload_exec(bContext *C, wmOperator *op) { - SpaceImage *sima; + Image *ima= CTX_data_edit_image(C); + SpaceImage *sima= CTX_wm_space_image(C); - /* retrieve state */ - sima= CTX_wm_space_image(C); - - if(!sima->image) + if(!ima) return OPERATOR_CANCELLED; - BKE_image_signal(sima->image, &sima->iuser, IMA_SIGNAL_RELOAD); - /* ED_space_image_set(C, sima, scene, obedit, NULL); - do we really need this? */ + // XXX other users? + BKE_image_signal(ima, (sima)? &sima->iuser: NULL, IMA_SIGNAL_RELOAD); - // XXX BIF_preview_changed(ID_TE); - WM_event_add_notifier(C, NC_IMAGE|NA_EDITED, sima->image); + WM_event_add_notifier(C, NC_IMAGE|NA_EDITED, ima); ED_area_tag_redraw(CTX_wm_area(C)); return OPERATOR_FINISHED; @@ -1096,7 +1098,7 @@ /* api callbacks */ ot->exec= reload_exec; - ot->poll= space_image_poll; + ot->poll= image_poll; /* flags */ ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO; _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org http://lists.blender.org/mailman/listinfo/bf-blender-cvs