}
else if (sa && sa->spacetype == SPACE_IMAGE) {
SpaceImage *sima = sa->spacedata.first;
- ED_space_image_set(sima, scene, obedit, ima);
+ ED_space_image_set(bmain, sima, scene, obedit, ima);
iuser = &sima->iuser;
}
else if (sa && sa->spacetype == SPACE_VIEW3D) {
}
}
-static int save_image_options_init(SaveImageOptions *simopts, SpaceImage *sima, Scene *scene,
+static int save_image_options_init(Main *bmain, SaveImageOptions *simopts, SpaceImage *sima, Scene *scene,
const bool guess_path, const bool save_as_render)
{
void *lock;
}
else {
BLI_strncpy(simopts->filepath, "//untitled", sizeof(simopts->filepath));
- BLI_path_abs(simopts->filepath, G.main->name);
+ BLI_path_abs(simopts->filepath, bmain->name);
}
}
else {
BLI_snprintf(simopts->filepath, sizeof(simopts->filepath), "//%s", ima->id.name + 2);
- BLI_path_abs(simopts->filepath, is_prev_save ? G.ima : G.main->name);
+ BLI_path_abs(simopts->filepath, is_prev_save ? G.ima : bmain->name);
}
}
return (ibuf != NULL);
}
-static void save_image_options_from_op(SaveImageOptions *simopts, wmOperator *op)
+static void save_image_options_from_op(Main *bmain, SaveImageOptions *simopts, wmOperator *op)
{
if (op->customdata) {
BKE_color_managed_view_settings_free(&simopts->im_format.view_settings);
if (RNA_struct_property_is_set(op->ptr, "filepath")) {
RNA_string_get(op->ptr, "filepath", simopts->filepath);
- BLI_path_abs(simopts->filepath, G.main->name);
+ BLI_path_abs(simopts->filepath, bmain->name);
}
}
static int image_save_as_exec(bContext *C, wmOperator *op)
{
+ Main *bmain = CTX_data_main(C);
SpaceImage *sima = CTX_wm_space_image(C);
SaveImageOptions simopts;
/* just in case to initialize values,
* these should be set on invoke or by the caller. */
- save_image_options_init(&simopts, sima, CTX_data_scene(C), false, false);
+ save_image_options_init(bmain, &simopts, sima, CTX_data_scene(C), false, false);
- save_image_options_from_op(&simopts, op);
+ save_image_options_from_op(bmain, &simopts, op);
save_image_doit(C, sima, op, &simopts, true);
static int image_save_as_invoke(bContext *C, wmOperator *op, const wmEvent *UNUSED(event))
{
+ Main *bmain = CTX_data_main(C);
SpaceImage *sima = CTX_wm_space_image(C);
Image *ima = ED_space_image(sima);
Scene *scene = CTX_data_scene(C);
save_image_options_defaults(&simopts);
- if (save_image_options_init(&simopts, sima, scene, true, save_as_render) == 0)
+ if (save_image_options_init(bmain, &simopts, sima, scene, true, save_as_render) == 0)
return OPERATOR_CANCELLED;
save_image_options_to_op(&simopts, op);
static int image_save_exec(bContext *C, wmOperator *op)
{
+ Main *bmain = CTX_data_main(C);
SpaceImage *sima = CTX_wm_space_image(C);
Scene *scene = CTX_data_scene(C);
SaveImageOptions simopts;
save_image_options_defaults(&simopts);
- if (save_image_options_init(&simopts, sima, scene, false, false) == 0)
+ if (save_image_options_init(bmain, &simopts, sima, scene, false, false) == 0)
return OPERATOR_CANCELLED;
- save_image_options_from_op(&simopts, op);
+ save_image_options_from_op(bmain, &simopts, op);
if (BLI_exists(simopts.filepath) && BLI_file_is_writable(simopts.filepath)) {
if (save_image_doit(C, sima, op, &simopts, false)) {
RNA_property_update(C, &ptr, prop);
}
else if (sima) {
- ED_space_image_set(sima, scene, obedit, ima);
+ ED_space_image_set(bmain, sima, scene, obedit, ima);
}
else if (gen_context == GEN_CONTEXT_PAINT_CANVAS) {
bScreen *sc;
SpaceImage *sima_other = (SpaceImage *)sl;
if (!sima_other->pin) {
- ED_space_image_set(sima_other, scene, scene->obedit, ima);
+ ED_space_image_set(bmain, sima_other, scene, scene->obedit, ima);
}
}
}
/* goes over all scenes, reads render layers */
static int image_read_renderlayers_exec(bContext *C, wmOperator *UNUSED(op))
{
+ Main *bmain = CTX_data_main(C);
Scene *scene = CTX_data_scene(C);
SpaceImage *sima = CTX_wm_space_image(C);
Image *ima;
ima = BKE_image_verify_viewer(IMA_TYPE_R_RESULT, "Render Result");
if (sima->image == NULL) {
- ED_space_image_set(sima, scene, NULL, ima);
+ ED_space_image_set(bmain, sima, scene, NULL, ima);
}
RE_ReadRenderResult(scene, scene);
RNA_string_get(op->ptr, "filepath", str);
- text = BKE_text_load_ex(bmain, str, G.main->name, internal);
+ text = BKE_text_load_ex(bmain, str, bmain->name, internal);
if (!text) {
if (op->customdata) MEM_freeN(op->customdata);
static int text_open_invoke(bContext *C, wmOperator *op, const wmEvent *UNUSED(event))
{
+ Main *bmain = CTX_data_main(C);
Text *text = CTX_data_edit_text(C);
- const char *path = (text && text->name) ? text->name : G.main->name;
+ const char *path = (text && text->name) ? text->name : bmain->name;
if (RNA_struct_property_is_set(op->ptr, "filepath"))
return text_open_exec(C, op);
return (text->name != NULL && !(text->flags & TXT_ISMEM));
}
-static void txt_write_file(Text *text, ReportList *reports)
+static void txt_write_file(Main *bmain, Text *text, ReportList *reports)
{
FILE *fp;
TextLine *tmp;
char filepath[FILE_MAX];
BLI_strncpy(filepath, text->name, FILE_MAX);
- BLI_path_abs(filepath, G.main->name);
+ BLI_path_abs(filepath, bmain->name);
fp = BLI_fopen(filepath, "w");
if (fp == NULL) {
static int text_save_exec(bContext *C, wmOperator *op)
{
+ Main *bmain = CTX_data_main(C);
Text *text = CTX_data_edit_text(C);
- txt_write_file(text, op->reports);
+ txt_write_file(bmain, text, op->reports);
text_update_cursor_moved(C);
WM_event_add_notifier(C, NC_TEXT | NA_EDITED, text);
static int text_save_as_exec(bContext *C, wmOperator *op)
{
+ Main *bmain = CTX_data_main(C);
Text *text = CTX_data_edit_text(C);
char str[FILE_MAX];
text->name = BLI_strdup(str);
text->flags &= ~TXT_ISMEM;
- txt_write_file(text, op->reports);
+ txt_write_file(bmain, text, op->reports);
text_update_cursor_moved(C);
WM_event_add_notifier(C, NC_TEXT | NA_EDITED, text);
static int text_save_as_invoke(bContext *C, wmOperator *op, const wmEvent *UNUSED(event))
{
+ Main *bmain = CTX_data_main(C);
Text *text = CTX_data_edit_text(C);
const char *str;
else if (text->flags & TXT_ISMEM)
str = text->id.name + 2;
else
- str = G.main->name;
+ str = bmain->name;
RNA_string_set(op->ptr, "filepath", str);
WM_event_add_fileselect(C, op);