fix for last check, bad intl text code
[goodguy/history.git] / cinelerra-5.1 / cinelerra / render.C
index ded88a3f033f920d20c25ac85a1f0a0f24996839..21e33c20f5cdcdcc33e159959d060af007e2f97c 100644 (file)
@@ -82,7 +82,7 @@
 
 
 RenderItem::RenderItem(MWindow *mwindow)
- : BC_MenuItem(_("Render..."), _("Shift+R"), 'R')
+ : BC_MenuItem(_("Render..."), _("Shift-R"), 'R')
 {
        this->mwindow = mwindow;
        set_shift(1);
@@ -270,9 +270,7 @@ void Render::start_interactive()
                mode = Render::INTERACTIVE;
                BC_DialogThread::start();
        }
-       else if( render_window && !in_progress )
-               render_window->raise_window();
-       else {
+       else if( in_progress ) {
                ErrorBox error_box(_(PROGRAM_NAME ": Error"),
                        mwindow->gui->get_abs_cursor_x(1),
                        mwindow->gui->get_abs_cursor_y(1));
@@ -280,6 +278,9 @@ void Render::start_interactive()
                error_box.raise_window();
                error_box.run_window();
        }
+       else if( render_window ) {
+               render_window->raise_window();
+       }
 }
 
 
@@ -289,22 +290,22 @@ void Render::start_batches(ArrayList<BatchRenderJob*> *jobs)
        {
                mode = Render::BATCH;
                batch_cancelled = 0;
-               // raise the window if rendering hasn't started yet
-               if( render_window && ! in_progress ) {
-                       render_window->raise_window();
-               }
-               else {
-                       ErrorBox error_box(PROGRAM_NAME ": Error",
-                                          mwindow->gui->get_abs_cursor_x(1),
-                                          mwindow->gui->get_abs_cursor_y(1));
-                       error_box.create_objects("Already rendering");
-                       error_box.raise_window();
-                       error_box.run_window();
-               }
                this->jobs = jobs;
                completion->reset();
                start_render();
        }
+       else if( in_progress ) {
+               ErrorBox error_box(PROGRAM_NAME ": Error",
+                                  mwindow->gui->get_abs_cursor_x(1),
+                                  mwindow->gui->get_abs_cursor_y(1));
+               error_box.create_objects("Already rendering");
+               error_box.raise_window();
+               error_box.run_window();
+       }
+       // raise the window if rendering hasn't started yet
+       else if( render_window ) {
+               render_window->raise_window();
+       }
 }
 
 void Render::start_batches(ArrayList<BatchRenderJob*> *jobs,
@@ -350,6 +351,15 @@ BC_Window* Render::new_gui()
        return render_window;
 }
 
+void Render::handle_done_event(int result)
+{
+       if(!result) {
+               // add to recentlist only on OK
+               render_window->format_tools->path_recent->
+                       add_item(File::formattostr(asset->format), asset->path);
+       }
+       render_window = 0;
+}
 
 void Render::handle_close_event(int result)
 {
@@ -357,9 +367,6 @@ void Render::handle_close_event(int result)
        const int debug = 0;
 
        if(!result) {
-               // add to recentlist only on OK
-               render_window->format_tools->path_recent->
-                       add_item(File::formattostr(asset->format), asset->path);
 // Check the asset format for errors.
                FormatCheck format_check(asset);
                format_error = format_check.check_format();
@@ -379,7 +386,6 @@ void Render::handle_close_event(int result)
                if(debug) printf("Render::handle_close_event %d\n", __LINE__);
        }
 //PRINT_TRACE
-       render_window = 0;
 }