auto keyframe color prefs, colorpicker rework, ru.po update, keyframe align fixes...
authorGood Guy <[email protected]>
Sat, 24 Sep 2016 22:55:45 +0000 (16:55 -0600)
committerGood Guy <[email protected]>
Sat, 24 Sep 2016 22:55:45 +0000 (16:55 -0600)
31 files changed:
cinelerra-5.1/cinelerra/autos.C
cinelerra-5.1/cinelerra/colorpicker.C
cinelerra-5.1/cinelerra/colorpicker.h
cinelerra-5.1/cinelerra/gwindow.C
cinelerra-5.1/cinelerra/gwindowgui.C
cinelerra-5.1/cinelerra/gwindowgui.h
cinelerra-5.1/cinelerra/gwindowgui.inc
cinelerra-5.1/cinelerra/preferencesthread.C
cinelerra-5.1/cinelerra/preferencesthread.h
cinelerra-5.1/cinelerra/trackcanvas.C
cinelerra-5.1/cinelerra/zoombar.C
cinelerra-5.1/guicast/bcwindowbase.C
cinelerra-5.1/guicast/bcwindowbase.h
cinelerra-5.1/plugins/svg/svgwin.C
cinelerra-5.1/plugins/theme_blond/data/preferences_bg.png
cinelerra-5.1/plugins/theme_blond/data/preferences_bg.svg [new file with mode: 0644]
cinelerra-5.1/plugins/theme_blond_cv/data/preferences_bg.png
cinelerra-5.1/plugins/theme_blue/data/preferences_bg.png
cinelerra-5.1/plugins/theme_blue/data/preferences_bg.svg [new file with mode: 0644]
cinelerra-5.1/plugins/theme_blue_dot/data/preferences_bg.png
cinelerra-5.1/plugins/theme_bright/data/preferences_bg.png
cinelerra-5.1/plugins/theme_bright/data/setformat_bg.png
cinelerra-5.1/plugins/theme_hulk/data/preferences_bg.png
cinelerra-5.1/plugins/theme_hulk/data/preferences_bg.svg [new file with mode: 0644]
cinelerra-5.1/plugins/theme_pinklady/data/preferences_bg.png
cinelerra-5.1/plugins/theme_pinklady/data/preferences_bg.svg [new file with mode: 0644]
cinelerra-5.1/plugins/theme_suv/data/preferences_bg.png
cinelerra-5.1/plugins/theme_suv/data/setformat_bg.png
cinelerra-5.1/plugins/theme_unflat/data/preferences_bg.png
cinelerra-5.1/plugins/theme_unflat/data/preferences_bg.svg [new file with mode: 0644]
cinelerra-5.1/po/ru.po

index 7ab31dd54ff3696657cae871de179406306eb203..1f169df2d2a10edcccb2b95991905ea2e94eae65 100644 (file)
@@ -287,14 +287,16 @@ Auto* Autos::get_auto_for_editing(double position)
        }
 
        Auto *result = 0;
-       position = edl->align_to_frame(position, 0);
+       get_prev_auto(track->to_units(position, 0), PLAY_FORWARD, result);
+//printf("Autos::get_auto_for_editing %p %p %p\n", default_auto, first, result);
+       if( !result || !EQUIV(track->from_units(result->position), position) ) {
+               if( edl->session->auto_keyframes ) {
+                       position = edl->align_to_frame(position, 0);
+                       result = insert_auto(track->to_units(position, 0));
+               }
+       }
 //printf("Autos::get_auto_for_editing %p %p\n", first, default_auto);
 
-       result = edl->session->auto_keyframes ?
-               insert_auto(track->to_units(position, 0)) :
-               get_prev_auto(track->to_units(position, 0), PLAY_FORWARD, result);
-
-//printf("Autos::get_auto_for_editing %p %p %p\n", default_auto, first, result);
        return result;
 }
 
index f51069e1a8145423914a6b59b1842b696fc6f94c..c26007feba196c885cb594370bdb2972ddf3fb5e 100644 (file)
 #include <unistd.h>
 
 
-ColorThread::ColorThread(int do_alpha, char *title)
- : Thread()
+ColorThread::ColorThread(int do_alpha, const char *title)
+ : BC_DialogThread()
 {
-       window = 0;
        this->title = title;
        this->do_alpha = do_alpha;
-       set_synchronous(0);
-       mutex = new Mutex("ColorThread::mutex");
-       completion = new Condition(1, "ColorThread::completion");
+       this->do_okcancel = 0;
 }
 
 ColorThread::~ColorThread()
 {
-       if(running())
-       {
-               window->set_done(0);
-               completion->lock("ColorThread::~ColorThread");
-               completion->unlock();
-       }
-       delete mutex;
-       delete completion;
+       close_window();
 }
 
-void ColorThread::start_window(int output, int alpha)
+void ColorThread::start_window(int output, int alpha, int do_okcancel)
 {
-       mutex->lock("ColorThread::start_window 1");
+       if( running() ) {
+               ColorWindow *gui = (ColorWindow *)get_gui();
+               if( gui ) {
+                       gui->lock_window("ColorThread::start_window");
+                       gui->raise_window(1);
+                       gui->unlock_window();
+               }
+               return;
+       }
        this->output = output;
        this->alpha = alpha;
-       mutex->unlock();
-
-       if(!running())
-       {
-               completion->lock("ColorThread::start_window");
-               Thread::start();
-       }
-       else
-       {
-               window->raise_window();
-               window->flush();
-       }
+       this->do_okcancel = do_okcancel;
+       start();
 }
 
-void ColorThread::run()
+BC_Window* ColorThread::new_gui()
 {
-       BC_DisplayInfo info;
-//printf("ColorThread::run 1\n");
        char window_title[BCTEXTLEN];
-
        strcpy(window_title, _(PROGRAM_NAME ": "));
-       if(title)
-               strcat(window_title, title);
-       else
-               strcat(window_title, _("Color Picker"));
-
-
-       mutex->lock("ColorThread::run 1");
-       window = new ColorWindow(this, 
-               info.get_abs_cursor_x() - 200, 
-               info.get_abs_cursor_y() - 200,
-               window_title);
-       window->create_objects();
-       mutex->unlock();
-       window->run_window();
-       mutex->lock("lorThread::run 2");
-       delete window;
-       window = 0;
-       mutex->unlock();
-       completion->unlock();
+       strcat(window_title, title ? title : _("Color Picker"));
+       BC_DisplayInfo display_info;
+       int x = display_info.get_abs_cursor_x() + 25;
+       int y = display_info.get_abs_cursor_y() - 100;
+       int w = 410, h = 320;
+       if( do_okcancel )
+               h += 10 + MAX(BC_OKButton::calculate_h(),BC_CancelButton::calculate_h());
+       int root_w = display_info.get_root_w(), root_h = display_info.get_root_h();
+       if( x+w > root_w ) x = root_w - w;
+       if( y+h > root_h ) y = root_h - h;
+       if( x < 0 ) x = 0;
+       if( y < 0 ) y = 0;
+       ColorWindow *gui = new ColorWindow(this, x, y, w, h, window_title);
+       gui->create_objects();
+       return gui;
 }
 
 void ColorThread::update_gui(int output, int alpha)
 {
-       mutex->lock("ColorThread::update_gui");
-       if (window)
-       {
-               this->output = output;
-               this->alpha = alpha;
-               window->change_values();
-               window->lock_window();
-               window->update_display();
-               window->unlock_window();
-       }
-       mutex->unlock();
+       ColorWindow *gui = (ColorWindow *)get_gui();
+       if( !gui ) return;
+       gui->lock_window();
+       this->output = output;
+       this->alpha = alpha;
+       gui->change_values();
+       gui->update_display();
+       gui->unlock_window();
 }
 
 int ColorThread::handle_new_color(int output, int alpha)
@@ -123,134 +101,80 @@ int ColorThread::handle_new_color(int output, int alpha)
        return 0;
 }
 
-ColorWindow* ColorThread::get_gui()
-{
-       return window;
-}
-
-
 
-ColorWindow::ColorWindow(ColorThread *thread, int x, int y, char *title)
- : BC_Window(title, 
-       x,
-       y,
-       410, 
-       320, 
-       410, 
-       320, 
-       0, 
-       0,
-       1)
+ColorWindow::ColorWindow(ColorThread *thread, int x, int y, int w, int h, const char *title)
+ : BC_Window(title, x, y, w, h, w, h, 0, 0, 1)
 {
        this->thread = thread;
 }
 
 void ColorWindow::create_objects()
 {
-       int x = 10, init_x = 10, y = 10, init_y = 10;
-       
+       int x0 = 10, y0 = 10;
        lock_window("ColorWindow::create_objects");
        change_values();
-       
-       
-       
-//printf("ColorWindow::create_objects 1 %p\n", this);
+
+       int x = x0, y = y0;
        add_tool(wheel = new PaletteWheel(this, x, y));
-//printf("ColorWindow::create_objects 1\n");
        wheel->create_objects();
-//printf("ColorWindow::create_objects 1\n");
 
-       x += 180;
-       add_tool(wheel_value = new PaletteWheelValue(this, x, y));
-//printf("ColorWindow::create_objects 1\n");
+       x += 180;  add_tool(wheel_value = new PaletteWheelValue(this, x, y));
        wheel_value->create_objects();
-
-
-       y += 180;
-       x = init_x; 
-//printf("ColorWindow::create_objects 1\n");
-       add_tool(output = new PaletteOutput(this, x, y));
-//printf("ColorWindow::create_objects 1\n");
+       x = x0; 
+       y += 180;  add_tool(output = new PaletteOutput(this, x, y));
        output->create_objects();
-//printf("ColorWindow::create_objects 1\n");
        
-       x += 240; y = init_y;
-       add_tool(new BC_Title(x, y, _("Hue"), SMALLFONT));
-       y += 15;
-//printf("ColorWindow::create_objects 1 %p\n", this);
-       add_tool(hue = new PaletteHue(this, x, y));
-       y += 30;
-//printf("ColorWindow::create_objects 1\n");
-       add_tool(new BC_Title(x, y, _("Saturation"), SMALLFONT));
-       y += 15;
-//printf("ColorWindow::create_objects 1\n");
-       add_tool(saturation = new PaletteSaturation(this, x, y));
-       y += 30;
-//printf("ColorWindow::create_objects 1\n");
-       add_tool(new BC_Title(x, y, _("Value"), SMALLFONT));
-       y += 15;
-//printf("ColorWindow::create_objects 1\n");
-       add_tool(value = new PaletteValue(this, x, y));
-       y += 30;
-//printf("ColorWindow::create_objects 1\n");
-       add_tool(new BC_Title(x, y, _("Red"), SMALLFONT));
-       y += 15;
-//printf("ColorWindow::create_objects 1\n");
-       add_tool(red = new PaletteRed(this, x, y));
-       y += 30;
-//printf("ColorWindow::create_objects 1\n");
-       add_tool(new BC_Title(x, y, _("Green"), SMALLFONT));
-       y += 15;
-//printf("ColorWindow::create_objects 1\n");
-       add_tool(green = new PaletteGreen(this, x, y));
-       y += 30;
-//printf("ColorWindow::create_objects 1\n");
-       add_tool(new BC_Title(x, y, _("Blue"), SMALLFONT));
-       y += 15;
-//printf("ColorWindow::create_objects 1\n");
-       add_tool(blue = new PaletteBlue(this, x, y));
-
-       if(thread->do_alpha)
-       {
-               y += 30;
-               add_tool(new BC_Title(x, y, _("Alpha"), SMALLFONT));
-               y += 15;
-               add_tool(alpha = new PaletteAlpha(this, x, y));
+       x += 240;
+       y = y0;    add_tool(new BC_Title(x, y, _("Hue"), SMALLFONT));
+       y += 15;   add_tool(hue = new PaletteHue(this, x, y));
+       y += 30;   add_tool(new BC_Title(x, y, _("Saturation"), SMALLFONT));
+       y += 15;   add_tool(saturation = new PaletteSaturation(this, x, y));
+       y += 30;   add_tool(new BC_Title(x, y, _("Value"), SMALLFONT));
+       y += 15;   add_tool(value = new PaletteValue(this, x, y));
+       y += 30;   add_tool(new BC_Title(x, y, _("Red"), SMALLFONT));
+       y += 15;   add_tool(red = new PaletteRed(this, x, y));
+       y += 30;   add_tool(new BC_Title(x, y, _("Green"), SMALLFONT));
+       y += 15;   add_tool(green = new PaletteGreen(this, x, y));
+       y += 30;   add_tool(new BC_Title(x, y, _("Blue"), SMALLFONT));
+       y += 15;   add_tool(blue = new PaletteBlue(this, x, y));
+
+       if(thread->do_alpha) {
+               y += 30;   add_tool(new BC_Title(x, y, _("Alpha"), SMALLFONT));
+               y += 15;   add_tool(alpha = new PaletteAlpha(this, x, y));
+       }
+       if( thread->do_okcancel ) {
+               add_tool(new BC_OKButton(this));
+               add_tool(new BC_CancelButton(this));
        }
-
        update_display();
-       show_window();
-       flush();
+       show_window(1);
        unlock_window();
-       return;
 }
 
 
 void ColorWindow::change_values()
- {
-       r = (float)((thread->output & 0xff0000) >> 16) / 255;
-       g = (float)((thread->output & 0xff00) >> 8) / 255;
-       b = (float)((thread->output & 0xff)) / 255;
-       HSV::rgb_to_hsv(r, g, b, h, s, v);
-       a = (float)thread->alpha / 255;
+{
+       r = (float)((thread->output & 0xff0000) >> 16) / 255;
+       g = (float)((thread->output & 0xff00) >> 8) / 255;
+       b = (float)((thread->output & 0xff)) / 255;
+       HSV::rgb_to_hsv(r, g, b, h, s, v);
+       a = (float)thread->alpha / 255;
 }
 
 
 int ColorWindow::close_event()
 {
-       set_done(0);
+       set_done(thread->do_okcancel ? 1 : 0);
        return 1;
 }
 
 
 void ColorWindow::update_rgb()
 {
-       HSV::rgb_to_hsv(red->get_value(), 
-                               green->get_value(), 
-                               blue->get_value(), 
-                               h, 
-                               s, 
-                               v);
+       float r = red->get_value();
+       float g = green->get_value();
+       float b = blue->get_value();
+       HSV::rgb_to_hsv(r, g, b, h, s, v);
        update_display();
 }
 
@@ -300,11 +224,6 @@ int ColorWindow::handle_event()
 }
 
 
-
-
-
-
-
 PaletteWheel::PaletteWheel(ColorWindow *window, int x, int y)
  : BC_SubWindow(x, y, 170, 170)
 {
@@ -313,6 +232,7 @@ PaletteWheel::PaletteWheel(ColorWindow *window, int x, int y)
        oldsaturation = 0;
        button_down = 0;
 }
+
 PaletteWheel::~PaletteWheel()
 {
 }
@@ -594,11 +514,7 @@ int PaletteWheelValue::draw(float hue, float saturation, float value)
        for(i = get_h() - 3; i >= 2; i--)
        {
                unsigned char *row = (unsigned char*)frame->get_rows()[i];
-               HSV::hsv_to_rgb(r_f, 
-                       g_f, 
-                       b_f, 
-                       hue, 
-                       saturation, 
+               HSV::hsv_to_rgb(r_f, g_f, b_f, hue, saturation, 
                        1.0 - (float)(i - 2) / (get_h() - 4));
                r = (int)(r_f * 255);
                g = (int)(g_f * 255);
@@ -611,26 +527,12 @@ int PaletteWheelValue::draw(float hue, float saturation, float value)
                }
        }
 
-       draw_3d_border(0, 
-               0, 
-               get_w(), 
-               get_h(), 
-               1);
-       draw_vframe(frame, 
-               2, 
-               2, 
-               get_w() - 4, 
-               get_h() - 4, 
-               2, 
-               2, 
-               get_w() - 4, 
-               get_h() - 4, 
-               0);
+       draw_3d_border(0, 0, get_w(), get_h(), 1);
+       draw_vframe(frame, 2, 2, get_w() - 4, get_h() - 4, 
+               2, 2, get_w() - 4, get_h() - 4, 0);
        set_color(BLACK);
-       draw_line(2, 
-               get_h() - 3 - (int)(value * (get_h() - 5)), 
-               get_w() - 3, 
-               get_h() - 3 - (int)(value * (get_h() - 5)));
+       draw_line(2, get_h() - 3 - (int)(value * (get_h() - 5)), 
+                 get_w() - 3, get_h() - 3 - (int)(value * (get_h() - 5)));
 //printf("PaletteWheelValue::draw %d %f\n", __LINE__, value);
 
        return 0;
@@ -664,13 +566,7 @@ int PaletteOutput::draw()
        HSV::hsv_to_rgb(r_f, g_f, b_f, window->h, window->s, window->v);
        set_color(((int)(r_f * 255) << 16) | ((int)(g_f * 255) << 8) | ((int)(b_f * 255)));
        draw_box(2, 2, get_w() - 4, get_h() - 4);
-       draw_3d_border(0, 
-               0, 
-               get_w(), 
-               get_h(), 
-               1);
-
-
+       draw_3d_border(0, 0, get_w(), get_h(), 1);
        return 0;
 }
 
@@ -711,6 +607,7 @@ int PaletteSaturation::handle_event()
        return 1;
 }
 
+
 PaletteValue::PaletteValue(ColorWindow *window, int x, int y)
  : BC_FSlider(x, y, 0, 150, 200, 0, 1.0, window->v, 0)
 {
index 683fe13578ac33f435b7687094007b216bcaf460..2527f320f4e7315a4191e0c2d95c7cefe41ba47e 100644 (file)
@@ -22,6 +22,7 @@
 #ifndef COLORPICKER_H
 #define COLORPICKER_H
 
+#include "bcdialog.h"
 #include "condition.inc"
 #include "guicast.h"
 #include "mutex.inc"
@@ -40,37 +41,26 @@ class PaletteGreen;
 class PaletteBlue;
 class PaletteAlpha;
 
-class ColorThread : public Thread
+class ColorThread : public BC_DialogThread
 {
 public:
-       ColorThread(int do_alpha = 0, char *title = 0);
+       ColorThread(int do_alpha = 0, const char *title = 0);
        ~ColorThread();
 
-
-       void run();
-       void start_window(int output, int alpha);
+       void start_window(int output, int alpha, int do_okcancel=0);
        virtual int handle_new_color(int output, int alpha);
        void update_gui(int output, int alpha);
-       ColorWindow* get_gui();
-
-private:
-       friend class ColorWindow;
+       BC_Window* new_gui();
 
-       ColorWindow *window;
-       Condition *completion;
-// protects window, output, alpha
-       Mutex *mutex;   
-// Starting color
-       int output;
-       int alpha;
-       int do_alpha;
-       char *title;
+       int output, alpha;
+       int do_alpha, do_okcancel;
+       const char *title;
 };
 
 class ColorWindow : public BC_Window
 {
 public:
-       ColorWindow(ColorThread *thread, int x, int y, char *title);
+       ColorWindow(ColorThread *thread, int x, int y, int w, int h, const char *title);
 
        void create_objects();
        void change_values();
index bfa490d3bf35e97ae047dbc6edbc1814e23655ff..e638147ee2561ef6f200ea074332847f0aae6ba4 100644 (file)
@@ -33,7 +33,7 @@ GWindow::GWindow(MWindow *mwindow)
 GWindow::~GWindow()
 {
        if(gui && running()) {
-               gui->set_done(0);
+               gui->set_done(1);
        }
        join();
        delete gui;  gui = 0;
@@ -51,6 +51,7 @@ void GWindow::create_objects()
 
        GWindowGUI::calculate_extents(mwindow->gui, &w, &h);
        gui = new GWindowGUI(mwindow, w, h);
+       gui->load_defaults();
        gui->create_objects();
 }
 
index 4589fb1eed977264e0a7b212953b5ffeebcc34d7..b1b8300c2ee9c72d42b67193ad8f7e6f737fec7d 100644 (file)
  */
 
 #include "autoconf.h"
+#include "bchash.h"
 #include "bcsignals.h"
 #include "clip.h"
+#include "condition.h"
 #include "edl.h"
 #include "edlsession.h"
 #include "gwindowgui.h"
 #include "language.h"
+#include "localsession.h"
 #include "mainmenu.h"
 #include "mainsession.h"
 #include "mwindow.h"
 #include "mwindowgui.h"
 #include "theme.h"
+#include "tracks.h"
 #include "trackcanvas.h"
+#include "zoombar.h"
 
-
+#include <math.h>
 
 
 
@@ -43,6 +48,22 @@ GWindowGUI::GWindowGUI(MWindow *mwindow, int w, int h)
        w, h, w, h, 0, 0, 1)
 {
        this->mwindow = mwindow;
+       color_thread = 0;
+}
+
+GWindowGUI::~GWindowGUI()
+{
+       delete color_thread;
+}
+
+void GWindowGUI::start_color_thread(GWindowColorButton *color_button)
+{
+       unlock_window();
+       delete color_thread;
+       color_thread = new GWindowColorThread(color_button);
+       int color = auto_colors[color_button->auto_toggle->info->ref];
+       color_thread->start(color);
+       lock_window("GWindowGUI::start_color_thread");
 }
 
 const char *GWindowGUI::other_text[NON_AUTOMATION_TOTAL] =
@@ -85,6 +106,33 @@ int GWindowGUI::auto_colors[AUTOMATION_TOTAL] =
        ORANGE,
 };
 
+void GWindowGUI::load_defaults()
+{
+       BC_Hash *defaults = mwindow->defaults;
+       auto_colors[AUTOMATION_MUTE] = defaults->get("AUTO_COLOR_MUTE", auto_colors[AUTOMATION_MUTE]);
+       auto_colors[AUTOMATION_CAMERA_X] = defaults->get("AUTO_COLOR_CAMERA_X", auto_colors[AUTOMATION_CAMERA_X]);
+       auto_colors[AUTOMATION_CAMERA_Y] = defaults->get("AUTO_COLOR_CAMERA_Y", auto_colors[AUTOMATION_CAMERA_Y]);
+       auto_colors[AUTOMATION_CAMERA_Z] = defaults->get("AUTO_COLOR_CAMERA_Z", auto_colors[AUTOMATION_CAMERA_Z]);
+       auto_colors[AUTOMATION_PROJECTOR_X] = defaults->get("AUTO_COLOR_PROJECTOR_X", auto_colors[AUTOMATION_PROJECTOR_X]);
+       auto_colors[AUTOMATION_PROJECTOR_Y] = defaults->get("AUTO_COLOR_PROJECTOR_Y", auto_colors[AUTOMATION_PROJECTOR_Y]);
+       auto_colors[AUTOMATION_PROJECTOR_Z] = defaults->get("AUTO_COLOR_PROJECTOR_Z", auto_colors[AUTOMATION_PROJECTOR_Z]);
+       auto_colors[AUTOMATION_FADE] = defaults->get("AUTO_COLOR_FADE", auto_colors[AUTOMATION_FADE]);
+       auto_colors[AUTOMATION_SPEED] = defaults->get("AUTO_COLOR_SPEED", auto_colors[AUTOMATION_SPEED]);
+}
+
+void GWindowGUI::save_defaults()
+{
+       BC_Hash *defaults = mwindow->defaults;
+       defaults->update("AUTO_COLOR_MUTE", auto_colors[AUTOMATION_MUTE]);
+       defaults->update("AUTO_COLOR_CAMERA_X", auto_colors[AUTOMATION_CAMERA_X]);
+       defaults->update("AUTO_COLOR_CAMERA_Y", auto_colors[AUTOMATION_CAMERA_Y]);
+       defaults->update("AUTO_COLOR_CAMERA_Z", auto_colors[AUTOMATION_CAMERA_Z]);
+       defaults->update("AUTO_COLOR_PROJECTOR_X", auto_colors[AUTOMATION_PROJECTOR_X]);
+       defaults->update("AUTO_COLOR_PROJECTOR_Y", auto_colors[AUTOMATION_PROJECTOR_Y]);
+       defaults->update("AUTO_COLOR_PROJECTOR_Z", auto_colors[AUTOMATION_PROJECTOR_Z]);
+       defaults->update("AUTO_COLOR_FADE", auto_colors[AUTOMATION_FADE]);
+       defaults->update("AUTO_COLOR_SPEED", auto_colors[AUTOMATION_SPEED]);
+}
 
 static toggleinfo toggle_order[] =
 {
@@ -102,6 +150,7 @@ static toggleinfo toggle_order[] =
        {1, AUTOMATION_PROJECTOR_X},
        {1, AUTOMATION_PROJECTOR_Y},
        {1, AUTOMATION_PROJECTOR_Z},
+       {0, -1}, // bar
        {1, AUTOMATION_MODE},
        {1, AUTOMATION_PAN},
        {1, AUTOMATION_MASK},
@@ -127,6 +176,7 @@ void GWindowGUI::calculate_extents(BC_WindowBase *gui, int *w, int *h)
                        &temp2, &temp3, &temp4, &temp5, &temp6, &temp7,
                        _(isauto ?  auto_text[ref] : other_text[ref]),
                        MEDIUMFONT);
+               current_w += current_h;
                *w = MAX(current_w, *w);
                *h += current_h + 5;
        }
@@ -135,7 +185,168 @@ void GWindowGUI::calculate_extents(BC_WindowBase *gui, int *w, int *h)
        *w += 20;
 }
 
+GWindowColorButton::GWindowColorButton(GWindowToggle *auto_toggle, int x, int y, int w)
+ : BC_Button(x, y, w, vframes)
+{
+       this->auto_toggle = auto_toggle;
+       this->color = 0;
+       for( int i=0; i<3; ++i )
+               vframes[i] = new VFrame(w, w, BC_RGBA8888, -1);
+}
+
+GWindowColorButton::~GWindowColorButton()
+{
+       for( int i=0; i<3; ++i )
+               delete vframes[i];
+}
+
+void GWindowColorButton::set_color(int color)
+{
+       this->color = color;
+       int r = (color>>16) & 0xff;
+       int g = (color>>8) & 0xff;
+       int b = (color>>0) & 0xff;
+       for( int i=0; i<3; ++i ) {
+               VFrame *vframe = vframes[i];
+               int ww = vframe->get_w(), hh = vframe->get_h();
+               int cx = (ww+1)/2, cy = hh/2;
+               double cc = (cx*cx + cy*cy) / 4.;
+               uint8_t *bp = vframe->get_data(), *dp = bp;
+               uint8_t *ep = dp + vframe->get_data_size();
+               int rr = r, gg = g, bb = b;
+               int bpl = vframe->get_bytes_per_line();
+               switch( i ) {
+               case BUTTON_UP:
+                       break;
+               case BUTTON_UPHI:
+                       if( (rr+=48) > 0xff ) rr = 0xff;
+                       if( (gg+=48) > 0xff ) gg = 0xff;
+                       if( (bb+=48) > 0xff ) bb = 0xff;
+                       break;
+               case BUTTON_DOWNHI:
+                       if( (rr-=48) < 0x00 ) rr = 0x00;
+                       if( (gg-=48) < 0x00 ) gg = 0x00;
+                       if( (bb-=48) < 0x00 ) bb = 0x00;
+                       break;
+               }
+               while( dp < ep ) {
+                       int yy = (dp-bp) / bpl, xx = ((dp-bp) % bpl) >> 2;
+                       int dy = cy - yy, dx = cx - xx;
+                       double s = dx*dx + dy*dy - cc;
+                       double ss = s < 0 ? 1 : s >= cc ? 0 : 1 - s/cc;
+                       int aa = ss * 0xff;
+                       *dp++ = rr; *dp++ = gg; *dp++ = bb; *dp++ = aa;
+               }
+       }
+       set_images(vframes);
+}
+
+void GWindowColorButton::update_gui(int color)
+{
+       set_color(color);
+       draw_face();
+}
+
+GWindowColorThread::GWindowColorThread(GWindowColorButton *color_button)
+ : ColorThread(0, color_button->auto_toggle->caption)
+{
+       this->color = 0;
+       this->color_button = color_button;
+       color_update = new GWindowColorUpdate(this);
+}
+
+GWindowColorThread::~GWindowColorThread()
+{
+       delete color_update;
+}
+
+void GWindowColorThread::start(int color)
+{
+       start_window(color, 0, 1);
+       color_update->start();
+}
+
+void GWindowColorThread::handle_done_event(int result)
+{
+       color_update->stop();
+       GWindowGUI *gui = color_button->auto_toggle->gui;
+       int ref = color_button->auto_toggle->info->ref;
+       gui->lock_window("GWindowColorThread::handle_done_event");
+       if( !result ) {
+               GWindowGUI::auto_colors[ref] = color;
+               color_button->auto_toggle->update_gui(color);
+               gui->save_defaults();
+       }
+       else {
+               color = GWindowGUI::auto_colors[ref];
+               color_button->update_gui(color);
+       }
+       gui->unlock_window();
+       MWindowGUI *mwindow_gui = color_button->auto_toggle->gui->mwindow->gui;
+       mwindow_gui->lock_window("GWindowColorUpdate::run");
+       mwindow_gui->draw_overlays(1);
+       mwindow_gui->unlock_window();
+}
+
+int GWindowColorThread::handle_new_color(int color, int alpha)
+{
+       this->color = color;
+       color_update->update_lock->unlock();
+       return 1;
+}
+
+void GWindowColorThread::update_gui()
+{
+       color_button->update_gui(color);
+}
+
+GWindowColorUpdate::GWindowColorUpdate(GWindowColorThread *color_thread)
+ : Thread(1, 0, 0)
+{
+       this->color_thread = color_thread;
+       this->update_lock = new Condition(0,"GWindowColorUpdate::update_lock");
+       done = 1;
+}
+
+GWindowColorUpdate::~GWindowColorUpdate()
+{
+       stop();
+       delete update_lock;
+}
+
+void GWindowColorUpdate::start()
+{
+       if( done ) {
+               done = 0;
+               Thread::start();
+       }
+}
+
+void GWindowColorUpdate::stop()
+{
+       if( !done ) {
+               done = 1;
+               update_lock->unlock();
+               join();
+       }
+}
+
+void GWindowColorUpdate::run()
+{
+       while( !done ) {
+               update_lock->lock("GWindowColorUpdate::run");
+               if( done ) break;
+               color_thread->update_gui();
+       }
+}
+
 
+int GWindowColorButton::handle_event()
+{
+       GWindowGUI *gui = auto_toggle->gui;
+       gui->start_color_thread(this);
+       return 1;
+}
 
 void GWindowGUI::create_objects()
 {
@@ -152,16 +363,26 @@ void GWindowGUI::create_objects()
                        y += bar->get_h() + 5;
                        continue;
                }
-               toggles[i] = new GWindowToggle(mwindow, this, x, y, *tp);
-               add_tool(toggles[i]);
                VFrame *vframe = 0;
                switch( ref ) {
                case AUTOMATION_MODE: vframe = mwindow->theme->modekeyframe_data;  break;
                case AUTOMATION_PAN:  vframe = mwindow->theme->pankeyframe_data;   break;
                case AUTOMATION_MASK: vframe = mwindow->theme->maskkeyframe_data;  break;
                }
+               const char *label = tp->isauto ? auto_text[tp->ref] : other_text[tp->ref] ;
+               int color = !tp->isauto ? -1 : auto_colors[tp->ref];
+               GWindowToggle *toggle = new GWindowToggle(mwindow, this, x, y, label, color, tp);
+               add_tool(toggles[i] = toggle);
                if( vframe )
                        draw_vframe(vframe, get_w()-vframe->get_w()-10, y);
+               else if( tp->isauto ) {
+                       int wh = toggle->get_h() - 4;
+                       GWindowColorButton *color_button =
+                               new GWindowColorButton(toggle, get_w()-wh-10, y+2, wh);
+                       add_tool(color_button);
+                       color_button->set_color(color);
+                       color_button->draw_face();
+               }
                y += toggles[i]->get_h() + 5;
        }
        unlock_window();
@@ -223,46 +444,72 @@ int GWindowGUI::keypress_event()
 }
 
 
-GWindowToggle::GWindowToggle(MWindow *mwindow,
-       GWindowGUI *gui, int x, int y, toggleinfo toggleinf)
- : BC_CheckBox(x, y, *get_main_value(mwindow, toggleinf),
-       _((toggleinf.isauto ?
-               GWindowGUI::auto_text[toggleinf.ref] :
-               GWindowGUI::other_text[toggleinf.ref])),
-       MEDIUMFONT,
-       !toggleinf.isauto ? -1 : GWindowGUI::auto_colors[toggleinf.ref])
+GWindowToggle::GWindowToggle(MWindow *mwindow, GWindowGUI *gui, int x, int y,
+       const char *text, int color, toggleinfo *info)
+ : BC_CheckBox(x, y, *get_main_value(mwindow, info), text, MEDIUMFONT, color)
 {
        this->mwindow = mwindow;
        this->gui = gui;
-       this->toggleinf = toggleinf;
+       this->info = info;
+       this->color = color;
+       this->color_button = 0;
+}
+
+GWindowToggle::~GWindowToggle()
+{
+       delete color_button;
 }
 
 int GWindowToggle::handle_event()
 {
-       *get_main_value(mwindow, toggleinf) = get_value();
+       int value = get_value();
+       *get_main_value(mwindow, info) = value;
        gui->update_mwindow();
 
 
 // Update stuff in MWindow
        unlock_window();
        mwindow->gui->lock_window("GWindowToggle::handle_event");
-       if(toggleinf.isauto)
-       {
+       if( info->isauto ) {
+               int autogroup_type = -1;
+               switch( info->ref ) {
+               case AUTOMATION_FADE:
+                       autogroup_type = mwindow->edl->tracks->recordable_video_tracks() ?
+                               AUTOGROUPTYPE_VIDEO_FADE : AUTOGROUPTYPE_AUDIO_FADE ;
+                       break;
+               case AUTOMATION_SPEED:
+                       autogroup_type = AUTOGROUPTYPE_SPEED;
+                       break;
+               case AUTOMATION_CAMERA_X:
+               case AUTOMATION_PROJECTOR_X:
+                       autogroup_type = AUTOGROUPTYPE_X;
+                       break;
+               case AUTOMATION_CAMERA_Y:
+               case AUTOMATION_PROJECTOR_Y:
+                       autogroup_type = AUTOGROUPTYPE_Y;
+                       break;
+               case AUTOMATION_CAMERA_Z:
+               case AUTOMATION_PROJECTOR_Z:
+                       autogroup_type = AUTOGROUPTYPE_ZOOM;
+                       break;
+               }
+               if( value && autogroup_type >= 0 ) {
+                       mwindow->edl->local_session->zoombar_showautotype = autogroup_type;
+                       mwindow->gui->zoombar->update_autozoom();
+               }
                mwindow->gui->draw_overlays(1);
        }
-       else
-       {
-               switch(toggleinf.ref)
-               {
-                       case NON_AUTOMATION_ASSETS:
-                       case NON_AUTOMATION_TITLES:
-                               mwindow->gui->update(1, 1, 0, 0, 1, 0, 0);
-                               break;
-
-                       case NON_AUTOMATION_TRANSITIONS:
-                       case NON_AUTOMATION_PLUGIN_AUTOS:
-                               mwindow->gui->draw_overlays(1);
-                               break;
+       else {
+               switch( info->ref ) {
+               case NON_AUTOMATION_ASSETS:
+               case NON_AUTOMATION_TITLES:
+                       mwindow->gui->update(1, 1, 0, 0, 1, 0, 0);
+                       break;
+
+               case NON_AUTOMATION_TRANSITIONS:
+               case NON_AUTOMATION_PLUGIN_AUTOS:
+                       mwindow->gui->draw_overlays(1);
+                       break;
                }
        }
 
@@ -272,12 +519,12 @@ int GWindowToggle::handle_event()
        return 1;
 }
 
-int* GWindowToggle::get_main_value(MWindow *mwindow, toggleinfo toggleinf)
+int* GWindowToggle::get_main_value(MWindow *mwindow, toggleinfo *info)
 {
-       if( toggleinf.isauto )
-               return &mwindow->edl->session->auto_conf->autos[toggleinf.ref];
+       if( info->isauto )
+               return &mwindow->edl->session->auto_conf->autos[info->ref];
 
-       switch(toggleinf.ref) {
+       switch( info->ref ) {
        case NON_AUTOMATION_ASSETS: return &mwindow->edl->session->show_assets;
        case NON_AUTOMATION_TITLES: return &mwindow->edl->session->show_titles;
        case NON_AUTOMATION_TRANSITIONS: return &mwindow->edl->session->auto_conf->transitions;
@@ -288,10 +535,14 @@ int* GWindowToggle::get_main_value(MWindow *mwindow, toggleinfo toggleinf)
 
 void GWindowToggle::update()
 {
-       int *vp = get_main_value(mwindow, toggleinf);
+       int *vp = get_main_value(mwindow, info);
        if( !vp ) return;
        set_value(*vp);
 }
 
-
+void GWindowToggle::update_gui(int color)
+{
+       BC_Toggle::color = color;
+       draw_face(1,0);
+}
 
index 86045eb9aabb802c0764560106bd274ca462bbfc..35a524e8003ff4c8221e16dd9cca5fdec1954593 100644 (file)
 #define GWINDOWGUI_H
 
 #include "automation.inc"
+#include "condition.inc"
+#include "colorpicker.h"
 #include "guicast.h"
+#include "gwindowgui.inc"
 #include "mwindow.inc"
 
-class GWindowToggle;
-
 enum {
        NONAUTOTOGGLES_ASSETS,
        NONAUTOTOGGLES_TITLES,
        NONAUTOTOGGLES_TRANSITIONS,
        NONAUTOTOGGLES_PLUGIN_AUTOS,
-       NONAUTOTOGGLES_BAR,
+       NONAUTOTOGGLES_BAR1,
+       NONAUTOTOGGLES_BAR2,
        NONAUTOTOGGLES_COUNT
 };
 
-struct toggleinfo
-{
-       int isauto;
-       int ref;
+struct toggleinfo {
+       int isauto, ref;
 };
 
 class GWindowGUI : public BC_Window
 {
 public:
        GWindowGUI(MWindow *mwindow, int w, int h);
+       ~GWindowGUI();
        static void calculate_extents(BC_WindowBase *gui, int *w, int *h);
        void create_objects();
        int translation_event();
        int close_event();
        int keypress_event();
+       void start_color_thread(GWindowColorButton *color_button);
        void update_toggles(int use_lock);
        void update_mwindow();
+       void load_defaults();
+       void save_defaults();
 
        static const char *other_text[];
        static const char *auto_text[];
@@ -61,24 +65,72 @@ public:
 
        MWindow *mwindow;
        GWindowToggle *toggles[NONAUTOTOGGLES_COUNT + AUTOMATION_TOTAL];
+       GWindowColorThread *color_thread;
 };
 
 class GWindowToggle : public BC_CheckBox
 {
 public:
-       GWindowToggle(MWindow *mwindow,
-               GWindowGUI *gui,
-               int x,
-               int y,
-               toggleinfo toggleinf);
+       GWindowToggle(MWindow *mwindow, GWindowGUI *gui, int x, int y,
+               const char *text, int color, toggleinfo *info);
+       ~GWindowToggle();
+
        int handle_event();
        void update();
+       void update_gui(int color);
 
-       static int* get_main_value(MWindow *mwindow, toggleinfo toggleinf);
+       static int* get_main_value(MWindow *mwindow, toggleinfo *info);
 
+       int color;
        MWindow *mwindow;
        GWindowGUI *gui;
-       toggleinfo toggleinf;
+       toggleinfo *info;
+       GWindowColorButton *color_button;
+};
+
+class GWindowColorButton : public BC_Button
+{
+public:
+       GWindowColorButton(GWindowToggle *auto_toggle, int x, int y, int w);
+       ~GWindowColorButton();
+
+       void set_color(int color);
+       void update_gui(int color);
+       int handle_event();
+
+       int color;
+       VFrame *vframes[3];
+       GWindowToggle *auto_toggle;
+};
+
+class GWindowColorThread : public ColorThread
+{
+public:
+       GWindowColorThread(GWindowColorButton *color_button);
+       ~GWindowColorThread();
+       void start(int color);
+       int handle_new_color(int color, int alpha);
+       void update_gui();
+       void handle_done_event(int result);
+
+       int color;
+       GWindowColorButton *color_button;
+       GWindowColorUpdate *color_update;
+};
+
+class GWindowColorUpdate : public Thread
+{
+public:
+       GWindowColorUpdate(GWindowColorThread *color_thread);
+       ~GWindowColorUpdate();
+
+       void start();
+       void stop();
+       void run();
+
+       int done;
+       Condition *update_lock;
+       GWindowColorThread *color_thread;
 };
 
 #endif
index 52b138aca9e46086d97c24d56e45231ed3062641..ac0cc578d8d2b87be29faeeebbc93bf28d11a917 100644 (file)
 #ifndef GWINDOWGUI_INC
 #define GWINDOWGUI_INC
 
-
 class GWindowGUI;
-
+class GWindowToggle;
+class GWindowColorButton;
+class GWindowColorThread;
+class GWindowColorUpdate;
 
 #endif
index 417f41f7aac8828a74ceba703f76fcd1a439b942..853c7a7012bbdeeda75fa368fb3aea184b6aedfe 100644 (file)
@@ -519,6 +519,7 @@ int PreferencesWindow::set_current_dialog(int number)
 //printf("PreferencesWindow::set_current_dialog %d\n", __LINE__);
                dialog->create_objects();
 //printf("PreferencesWindow::set_current_dialog %d\n", __LINE__);
+               dialog->lower_window();
                dialog->show_window(0);
        }
 
@@ -598,12 +599,16 @@ PreferencesApply::PreferencesApply(MWindow *mwindow, PreferencesThread *thread)
        this->mwindow = mwindow;
        this->thread = thread;
 }
-
 int PreferencesApply::handle_event()
 {
        thread->apply_settings();
        return 1;
 }
+int PreferencesApply::resize_event(int w, int h)
+{
+       reposition_window(w/2 - get_w()/2, h-get_h()-10);
+       return 1;
+}
 
 
 
@@ -616,7 +621,6 @@ PreferencesOK::PreferencesOK(MWindow *mwindow, PreferencesThread *thread)
        this->mwindow = mwindow;
        this->thread = thread;
 }
-
 int PreferencesOK::keypress_event()
 {
        if(get_keypress() == RETURN)
@@ -631,6 +635,11 @@ int PreferencesOK::handle_event()
        thread->window->set_done(0);
        return 1;
 }
+int PreferencesOK::resize_event(int w, int h)
+{
+       reposition_window(10, h-get_h()-10);
+       return 1;
+}
 
 
 
@@ -651,12 +660,16 @@ int PreferencesCancel::keypress_event()
        }
        return 0;
 }
-
 int PreferencesCancel::handle_event()
 {
        thread->window->set_done(1);
        return 1;
 }
+int PreferencesCancel::resize_event(int w, int h)
+{
+       reposition_window(w-get_w()-10, h-get_h()-10);
+       return 1;
+}
 
 
 
index ed5c54b9108f1b5504d5e4423ca152fa3f9fbcbd..4de6aa8a4a369718f70f2d7417895572dc0018c9 100644 (file)
@@ -166,6 +166,7 @@ class PreferencesApply : public BC_GenericButton
 public:
        PreferencesApply(MWindow *mwindow, PreferencesThread *thread);
        int handle_event();
+       int resize_event(int w, int h);
        MWindow *mwindow;
        PreferencesThread *thread;
 };
@@ -176,6 +177,7 @@ public:
        PreferencesOK(MWindow *mwindow, PreferencesThread *thread);
        int keypress_event();
        int handle_event();
+       int resize_event(int w, int h);
        MWindow *mwindow;
        PreferencesThread *thread;
 };
@@ -186,6 +188,7 @@ public:
        PreferencesCancel(MWindow *mwindow, PreferencesThread *thread);
        int keypress_event();
        int handle_event();
+       int resize_event(int w, int h);
        MWindow *mwindow;
        PreferencesThread *thread;
 };
index 2e21511e31aad2d68ac5bf6d1908607259c78b21..9ec6971bdb9f1aa58ee29311989aee3d03d64951 100644 (file)
@@ -2618,7 +2618,10 @@ int TrackCanvas::test_floatline(int center_pixel,
                {
                        Auto *current;
                        mwindow->undo->update_undo_before();
-                       current = mwindow->session->drag_auto = autos->insert_auto(position1);
+                       double position = autos->track->from_units(position1);
+                       position = mwindow->edl->align_to_frame(position, 0);
+                       int64_t new_position = autos->track->to_units(position,0);
+                       current = mwindow->session->drag_auto = autos->insert_auto(new_position);
                        ((FloatAuto*)current)->set_value(value);
                        mwindow->session->drag_start_percentage = value_to_percentage(value, autogrouptype);
                        mwindow->session->drag_start_position = current->position;
index 6fee32b14ef371ca5aaa3d93b515092e0594262f..47dc15d538ce5e4a29b209da9866b33b773ab5a7 100644 (file)
@@ -176,27 +176,30 @@ int ZoomBar::draw()
 void ZoomBar::update_autozoom()
 {
        char string[BCTEXTLEN];
-       switch (mwindow->edl->local_session->zoombar_showautotype) {
+       int autogroup_type = mwindow->edl->local_session->zoombar_showautotype;
+       switch( autogroup_type ) {
        case AUTOGROUPTYPE_AUDIO_FADE:
        case AUTOGROUPTYPE_VIDEO_FADE:
                sprintf(string, "%0.01f to %0.01f\n", 
-                       mwindow->edl->local_session->automation_mins[mwindow->edl->local_session->zoombar_showautotype],
-                       mwindow->edl->local_session->automation_maxs[mwindow->edl->local_session->zoombar_showautotype]);
+                       mwindow->edl->local_session->automation_mins[autogroup_type],
+                       mwindow->edl->local_session->automation_maxs[autogroup_type]);
                break;
        case AUTOGROUPTYPE_ZOOM:
        case AUTOGROUPTYPE_SPEED:
                sprintf(string, "%0.03f to %0.03f\n", 
-                       mwindow->edl->local_session->automation_mins[mwindow->edl->local_session->zoombar_showautotype],
-                       mwindow->edl->local_session->automation_maxs[mwindow->edl->local_session->zoombar_showautotype]);
+                       mwindow->edl->local_session->automation_mins[autogroup_type],
+                       mwindow->edl->local_session->automation_maxs[autogroup_type]);
                break;
        case AUTOGROUPTYPE_X:
        case AUTOGROUPTYPE_Y:
                sprintf(string, "%0.0f to %.0f\n", 
-                       mwindow->edl->local_session->automation_mins[mwindow->edl->local_session->zoombar_showautotype],
-                       mwindow->edl->local_session->automation_maxs[mwindow->edl->local_session->zoombar_showautotype]);
+                       mwindow->edl->local_session->automation_mins[autogroup_type],
+                       mwindow->edl->local_session->automation_maxs[autogroup_type]);
                break;
        }
        auto_zoom_text->update(string);
+       const char *group_name = AutoTypeMenu::to_text(autogroup_type);
+       auto_type->set_text(group_name);
 }
 
 int ZoomBar::update()
index c54685a41070cb335d2c2989badacf69202ce4c3..b97208fa0f4c73a4ec67efdcea3d30f20fcd3db0 100644 (file)
@@ -53,6 +53,7 @@
 #include <string.h>
 #include <unistd.h>
 #include <wchar.h>
+#include <typeinfo>
 
 #include <X11/extensions/Xinerama.h>
 #include <X11/extensions/Xvlib.h>
@@ -3756,8 +3757,8 @@ int BC_WindowBase::get_cursor_y()
 
 int BC_WindowBase::dump_windows()
 {
-       printf("\tBC_WindowBase::dump_windows window=%p win=%p\n",
-               this, (void*)this->win);
+       printf("\tBC_WindowBase::dump_windows window=%p win=%p '%s', %dx%d+%d+%d %s\n",
+               this, (void*)this->win, title, w,h,x,y, typeid(*this).name());
        for(int i = 0; i < subwindows->size(); i++)
                subwindows->get(i)->dump_windows();
        for(int i = 0; i < popups.size(); i++)
@@ -4356,3 +4357,15 @@ BC_Pixmap *BC_WindowBase::create_pixmap(VFrame *vframe)
 }
 
 
+void BC_WindowBase::flicker(int n, int ms)
+{
+       int color = get_bg_color();
+       for( int i=2*n; --i>=0; ) {
+               set_inverse();          set_bg_color(WHITE);
+               clear_box(0,0, w,h);    flash(1);
+               sync_display();         Timer::delay(ms);
+       }
+       set_bg_color(color);
+       set_opaque();
+}
+
index 6ac7782b25f185e87f5e11682b9c5348a7c2f362..994da7b0dc87d45d1a9641a0a6a2edb7a25736b3 100644 (file)
@@ -477,6 +477,7 @@ public:
        void slide_right(int distance);
        void slide_up(int distance);
        void slide_down(int distance);
+       void flicker(int n=3, int ms=66);
 
        int cycle_textboxes(int amount);
 
index d5f8b97824f09d9a19d1babd254eccc1a3d32864..702d67b4f5258b09524f476219c9338fb02a9b17 100644 (file)
@@ -135,17 +135,6 @@ void SvgWin::update_gui(SvgConfig &config)
        unlock_window();
 }
 
-static void flicker(BC_GenericButton *btn, int n, int clr)
-{
-       int color = btn->get_color();
-       while( --n >= 0 ) {
-               btn->text_color(clr);   btn->draw_face(1);
-               btn->sync_display();    usleep(100000);
-               btn->text_color(color); btn->draw_face(1);
-               btn->sync_display();    usleep(100000);
-       }
-}
-
 SvgCoord::SvgCoord(SvgWin *win, SvgMain *client, int x, int y, float *value)
  : BC_TumbleTextBox(win, *value, (float)0, (float)3000, x, y, 100)
 {
@@ -182,7 +171,7 @@ int NewSvgButton::handle_event()
                start();
        }
        else {
-               flicker(this, 5, RED);
+               flicker();
                window->editing_lock.unlock();
        }
 
@@ -290,7 +279,7 @@ int EditSvgButton::handle_event()
                start();
        }
        else {
-               flicker(this, 5, RED);
+               flicker();
                window->editing_lock.unlock();
        }
        return 1;
index 3cd4747fa829251851dc53011eb7555af0d3188f..20b02311d2d69b4a251cec85a229a7b29ff9aca5 100644 (file)
Binary files a/cinelerra-5.1/plugins/theme_blond/data/preferences_bg.png and b/cinelerra-5.1/plugins/theme_blond/data/preferences_bg.png differ
diff --git a/cinelerra-5.1/plugins/theme_blond/data/preferences_bg.svg b/cinelerra-5.1/plugins/theme_blond/data/preferences_bg.svg
new file mode 100644 (file)
index 0000000..2c6de51
--- /dev/null
@@ -0,0 +1,405 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   id="svg2"
+   version="1.1"
+   inkscape:version="0.48.0 r9654"
+   width="880"
+   height="77"
+   sodipodi:docname="preferences_bg.svg">
+  <metadata
+     id="metadata8">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <defs
+     id="defs6">
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective10" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective10-85" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective2895-6" />
+    <linearGradient
+       gradientTransform="matrix(1.0644052,0,0,1,-1.7019555,0)"
+       gradientUnits="userSpaceOnUse"
+       y2="8.9094315"
+       x2="32.828682"
+       y1="8.9094315"
+       x1="16.775095"
+       id="linearGradient3607-1"
+       xlink:href="#linearGradient3601-1"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       id="perspective10-8"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <linearGradient
+       id="linearGradient3601-1">
+      <stop
+         id="stop3603-5"
+         offset="0"
+         style="stop-color:#c8c696;stop-opacity:1;" />
+      <stop
+         id="stop3605-9"
+         offset="1"
+         style="stop-color:#202020;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3601-1"
+       id="linearGradient2891"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.0644052,0,0,1,-1.7019555,0)"
+       x1="16.775095"
+       y1="8.9094315"
+       x2="32.828682"
+       y2="8.9094315" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3601-1"
+       id="linearGradient2896"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.020055,0,0,1.5515391,-441.05897,-113.20995)"
+       x1="16.775095"
+       y1="8.9094315"
+       x2="32.828682"
+       y2="8.9094315" />
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:menu-tooltip="Drop shadow under the cut-out of the shape"
+       inkscape:menu="Shadows and Glows"
+       height="1"
+       width="1"
+       y="0"
+       x="0"
+       inkscape:label="Cutout"
+       id="filter2855">
+      <feGaussianBlur
+         stdDeviation="4.2"
+         in="SourceAlpha"
+         id="feGaussianBlur2857" />
+      <feOffset
+         result="result91"
+         dx="5"
+         dy="5"
+         id="feOffset2859" />
+      <feComposite
+         in="SourceGraphic"
+         operator="out"
+         in2="result91"
+         id="feComposite2861" />
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+       inkscape:menu="Shadows and Glows"
+       inkscape:label="Inner Shadow"
+       id="filter3632">
+      <feGaussianBlur
+         result="result8"
+         stdDeviation="4"
+         id="feGaussianBlur3634" />
+      <feOffset
+         result="result11"
+         dy="4"
+         dx="4"
+         id="feOffset3636" />
+      <feComposite
+         operator="in"
+         in="SourceGraphic"
+         result="result6"
+         in2="result11"
+         id="feComposite3638" />
+      <feFlood
+         flood-color="rgb(0,0,0)"
+         flood-opacity="1"
+         in="result6"
+         result="result10"
+         id="feFlood3640" />
+      <feBlend
+         result="result12"
+         in="result6"
+         mode="normal"
+         in2="result10"
+         id="feBlend3642" />
+      <feComposite
+         operator="in"
+         result="result2"
+         in2="SourceGraphic"
+         id="feComposite3644" />
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:menu-tooltip="Inner colorized shadow, outer black shadow"
+       inkscape:menu="Shadows and Glows"
+       inkscape:label="In and Out"
+       id="filter8106">
+      <feGaussianBlur
+         stdDeviation="4"
+         in="SourceAlpha"
+         result="result0"
+         id="feGaussianBlur8108" />
+      <feOffset
+         result="result4"
+         dy="5"
+         dx="5"
+         id="feOffset8110" />
+      <feComposite
+         result="result3"
+         operator="xor"
+         in="SourceGraphic"
+         in2="result4"
+         id="feComposite8112" />
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       x="-0.25"
+       y="-0.25"
+       width="1.5"
+       height="1.5"
+       inkscape:menu-tooltip="Strongly raised border around a flat surface"
+       inkscape:menu="Bevels"
+       inkscape:label="Raised border"
+       id="filter8082">
+      <feGaussianBlur
+         result="result1"
+         stdDeviation="4"
+         id="feGaussianBlur8084" />
+      <feComposite
+         operator="in"
+         result="result4"
+         in="result1"
+         in2="result1"
+         id="feComposite8086" />
+      <feGaussianBlur
+         in="result4"
+         result="result6"
+         stdDeviation="2"
+         id="feGaussianBlur8088" />
+      <feComposite
+         result="result8"
+         in="result6"
+         operator="xor"
+         in2="result4"
+         id="feComposite8090" />
+      <feComposite
+         in="result4"
+         result="fbSourceGraphic"
+         operator="atop"
+         in2="result8"
+         id="feComposite8092" />
+      <feSpecularLighting
+         in="fbSourceGraphic"
+         result="result1"
+         lighting-color="#ffffff"
+         surfaceScale="3"
+         specularConstant="1.29999995"
+         specularExponent="10"
+         id="feSpecularLighting8094">
+        <feDistantLight
+           elevation="55"
+           azimuth="235"
+           id="feDistantLight8096" />
+      </feSpecularLighting>
+      <feComposite
+         in="result1"
+         result="result2"
+         operator="atop"
+         in2="fbSourceGraphic"
+         id="feComposite8098" />
+      <feComposite
+         k4="0"
+         k1="0"
+         in="fbSourceGraphic"
+         result="result4"
+         operator="arithmetic"
+         k2="1"
+         k3="1"
+         in2="result2"
+         id="feComposite8100" />
+      <feComposite
+         result="result9"
+         in="result4"
+         operator="over"
+         in2="SourceGraphic"
+         id="feComposite8102" />
+      <feBlend
+         mode="multiply"
+         in2="result2"
+         id="feBlend8104" />
+    </filter>
+    <linearGradient
+       y2="15.76232"
+       x2="40.867283"
+       y1="43.375023"
+       x1="41.195095"
+       gradientTransform="matrix(1,0,0,0.99208547,467.42198,-26.672132)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3419"
+       xlink:href="#linearGradient2817"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient2817">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop2819" />
+      <stop
+         id="stop2827"
+         offset="0.5"
+         style="stop-color:#323232;stop-opacity:1;" />
+      <stop
+         id="stop2825"
+         offset="0.5"
+         style="stop-color:#969696;stop-opacity:1;" />
+      <stop
+         style="stop-color:#c8c8c8;stop-opacity:1;"
+         offset="1"
+         id="stop2821" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective10-9" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2817"
+       id="linearGradient2823"
+       x1="41.195095"
+       y1="43.375023"
+       x2="40.867283"
+       y2="15.76232"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,0.99208547,0,0.12475137)" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective2895" />
+    <linearGradient
+       gradientTransform="matrix(1.0644052,0,0,1,-1.1050113,0)"
+       gradientUnits="userSpaceOnUse"
+       y2="8.9094315"
+       x2="32.828682"
+       y1="8.9094315"
+       x1="16.775095"
+       id="linearGradient3607"
+       xlink:href="#linearGradient3601"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       id="perspective10-1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <linearGradient
+       id="linearGradient3601">
+      <stop
+         id="stop3603"
+         offset="0"
+         style="stop-color:#c8c696;stop-opacity:1;" />
+      <stop
+         id="stop3605"
+         offset="1"
+         style="stop-color:#202020;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3601-1"
+       id="linearGradient3038"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.020055,0,0,1.5515391,-20.57345,-103.04903)"
+       x1="16.775095"
+       y1="8.9094315"
+       x2="32.828682"
+       y2="8.9094315" />
+  </defs>
+  <sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#ded9b3"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1366"
+     inkscape:window-height="693"
+     id="namedview4"
+     showgrid="false"
+     inkscape:zoom="1.1134575"
+     inkscape:cx="464.44849"
+     inkscape:cy="25.329944"
+     inkscape:window-x="0"
+     inkscape:window-y="24"
+     inkscape:window-maximized="1"
+     inkscape:current-layer="svg2"
+     inkscape:showpageshadow="false" />
+  <rect
+     style="fill:#cecea2;fill-opacity:1;stroke:none"
+     id="rect3611"
+     width="880"
+     height="77"
+     x="0"
+     y="0" />
+  <path
+     style="fill:#c8c696;fill-opacity:1;stroke:none"
+     d="M 0,27 0,77 880,77 880,27 0,27 z"
+     id="rect2818"
+     sodipodi:nodetypes="ccccc"
+     inkscape:connector-curvature="0" />
+  <rect
+     style="fill:none;stroke:none"
+     id="rect2818-5"
+     width="141.23457"
+     height="100"
+     x="456.82379"
+     y="10.160921" />
+  <path
+     sodipodi:nodetypes="ccccc"
+     id="path3042"
+     d="m 0,26 0,1 880,0 0,-1 -880,0 z"
+     style="fill:#4d5013;fill-opacity:1;stroke:none"
+     inkscape:connector-curvature="0" />
+</svg>
index f0b9357ce239225b503f1388a1c396e28b29ae0d..4fd39d5ba182cc4e296d7dfd157cc38723f505e4 100644 (file)
Binary files a/cinelerra-5.1/plugins/theme_blond_cv/data/preferences_bg.png and b/cinelerra-5.1/plugins/theme_blond_cv/data/preferences_bg.png differ
index 9fd7d11e8a8aa83a45c7f2af802056eb8dab8ba2..d16f5a833eefe9712c2b6e6a999cfe94c0f37505 100644 (file)
Binary files a/cinelerra-5.1/plugins/theme_blue/data/preferences_bg.png and b/cinelerra-5.1/plugins/theme_blue/data/preferences_bg.png differ
diff --git a/cinelerra-5.1/plugins/theme_blue/data/preferences_bg.svg b/cinelerra-5.1/plugins/theme_blue/data/preferences_bg.svg
new file mode 100644 (file)
index 0000000..ff8faff
--- /dev/null
@@ -0,0 +1,405 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   id="svg2"
+   version="1.1"
+   inkscape:version="0.48.0 r9654"
+   width="880"
+   height="77"
+   sodipodi:docname="preferences_bg.svg">
+  <metadata
+     id="metadata8">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <defs
+     id="defs6">
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective10" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective10-85" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective2895-6" />
+    <linearGradient
+       gradientTransform="matrix(1.0644052,0,0,1,-1.7019555,0)"
+       gradientUnits="userSpaceOnUse"
+       y2="8.9094315"
+       x2="32.828682"
+       y1="8.9094315"
+       x1="16.775095"
+       id="linearGradient3607-1"
+       xlink:href="#linearGradient3601-1"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       id="perspective10-8"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <linearGradient
+       id="linearGradient3601-1">
+      <stop
+         id="stop3603-5"
+         offset="0"
+         style="stop-color:#939ed4;stop-opacity:1;" />
+      <stop
+         id="stop3605-9"
+         offset="1"
+         style="stop-color:#202020;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3601-1"
+       id="linearGradient2891"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.0644052,0,0,1,-1.7019555,0)"
+       x1="16.775095"
+       y1="8.9094315"
+       x2="32.828682"
+       y2="8.9094315" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3601-1"
+       id="linearGradient2896"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.020055,0,0,1.5515391,-441.05897,-113.20995)"
+       x1="16.775095"
+       y1="8.9094315"
+       x2="32.828682"
+       y2="8.9094315" />
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:menu-tooltip="Drop shadow under the cut-out of the shape"
+       inkscape:menu="Shadows and Glows"
+       height="1"
+       width="1"
+       y="0"
+       x="0"
+       inkscape:label="Cutout"
+       id="filter2855">
+      <feGaussianBlur
+         stdDeviation="4.2"
+         in="SourceAlpha"
+         id="feGaussianBlur2857" />
+      <feOffset
+         result="result91"
+         dx="5"
+         dy="5"
+         id="feOffset2859" />
+      <feComposite
+         in="SourceGraphic"
+         operator="out"
+         in2="result91"
+         id="feComposite2861" />
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+       inkscape:menu="Shadows and Glows"
+       inkscape:label="Inner Shadow"
+       id="filter3632">
+      <feGaussianBlur
+         result="result8"
+         stdDeviation="4"
+         id="feGaussianBlur3634" />
+      <feOffset
+         result="result11"
+         dy="4"
+         dx="4"
+         id="feOffset3636" />
+      <feComposite
+         operator="in"
+         in="SourceGraphic"
+         result="result6"
+         in2="result11"
+         id="feComposite3638" />
+      <feFlood
+         flood-color="rgb(0,0,0)"
+         flood-opacity="1"
+         in="result6"
+         result="result10"
+         id="feFlood3640" />
+      <feBlend
+         result="result12"
+         in="result6"
+         mode="normal"
+         in2="result10"
+         id="feBlend3642" />
+      <feComposite
+         operator="in"
+         result="result2"
+         in2="SourceGraphic"
+         id="feComposite3644" />
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:menu-tooltip="Inner colorized shadow, outer black shadow"
+       inkscape:menu="Shadows and Glows"
+       inkscape:label="In and Out"
+       id="filter8106">
+      <feGaussianBlur
+         stdDeviation="4"
+         in="SourceAlpha"
+         result="result0"
+         id="feGaussianBlur8108" />
+      <feOffset
+         result="result4"
+         dy="5"
+         dx="5"
+         id="feOffset8110" />
+      <feComposite
+         result="result3"
+         operator="xor"
+         in="SourceGraphic"
+         in2="result4"
+         id="feComposite8112" />
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       x="-0.25"
+       y="-0.25"
+       width="1.5"
+       height="1.5"
+       inkscape:menu-tooltip="Strongly raised border around a flat surface"
+       inkscape:menu="Bevels"
+       inkscape:label="Raised border"
+       id="filter8082">
+      <feGaussianBlur
+         result="result1"
+         stdDeviation="4"
+         id="feGaussianBlur8084" />
+      <feComposite
+         operator="in"
+         result="result4"
+         in="result1"
+         in2="result1"
+         id="feComposite8086" />
+      <feGaussianBlur
+         in="result4"
+         result="result6"
+         stdDeviation="2"
+         id="feGaussianBlur8088" />
+      <feComposite
+         result="result8"
+         in="result6"
+         operator="xor"
+         in2="result4"
+         id="feComposite8090" />
+      <feComposite
+         in="result4"
+         result="fbSourceGraphic"
+         operator="atop"
+         in2="result8"
+         id="feComposite8092" />
+      <feSpecularLighting
+         in="fbSourceGraphic"
+         result="result1"
+         lighting-color="#ffffff"
+         surfaceScale="3"
+         specularConstant="1.29999995"
+         specularExponent="10"
+         id="feSpecularLighting8094">
+        <feDistantLight
+           elevation="55"
+           azimuth="235"
+           id="feDistantLight8096" />
+      </feSpecularLighting>
+      <feComposite
+         in="result1"
+         result="result2"
+         operator="atop"
+         in2="fbSourceGraphic"
+         id="feComposite8098" />
+      <feComposite
+         k4="0"
+         k1="0"
+         in="fbSourceGraphic"
+         result="result4"
+         operator="arithmetic"
+         k2="1"
+         k3="1"
+         in2="result2"
+         id="feComposite8100" />
+      <feComposite
+         result="result9"
+         in="result4"
+         operator="over"
+         in2="SourceGraphic"
+         id="feComposite8102" />
+      <feBlend
+         mode="multiply"
+         in2="result2"
+         id="feBlend8104" />
+    </filter>
+    <linearGradient
+       y2="15.76232"
+       x2="40.867283"
+       y1="43.375023"
+       x1="41.195095"
+       gradientTransform="matrix(1,0,0,0.99208547,467.42198,-26.672132)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3419"
+       xlink:href="#linearGradient2817"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient2817">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop2819" />
+      <stop
+         id="stop2827"
+         offset="0.5"
+         style="stop-color:#323232;stop-opacity:1;" />
+      <stop
+         id="stop2825"
+         offset="0.5"
+         style="stop-color:#969696;stop-opacity:1;" />
+      <stop
+         style="stop-color:#c8c8c8;stop-opacity:1;"
+         offset="1"
+         id="stop2821" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective10-9" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2817"
+       id="linearGradient2823"
+       x1="41.195095"
+       y1="43.375023"
+       x2="40.867283"
+       y2="15.76232"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,0.99208547,0,0.12475137)" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective2895" />
+    <linearGradient
+       gradientTransform="matrix(1.0644052,0,0,1,-1.1050113,0)"
+       gradientUnits="userSpaceOnUse"
+       y2="8.9094315"
+       x2="32.828682"
+       y1="8.9094315"
+       x1="16.775095"
+       id="linearGradient3607"
+       xlink:href="#linearGradient3601"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       id="perspective10-1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <linearGradient
+       id="linearGradient3601">
+      <stop
+         id="stop3603"
+         offset="0"
+         style="stop-color:#939ed4;stop-opacity:1;" />
+      <stop
+         id="stop3605"
+         offset="1"
+         style="stop-color:#202020;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3601-1"
+       id="linearGradient3038"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.020055,0,0,1.5515391,-20.57345,-103.04903)"
+       x1="16.775095"
+       y1="8.9094315"
+       x2="32.828682"
+       y2="8.9094315" />
+  </defs>
+  <sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#092340"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1366"
+     inkscape:window-height="693"
+     id="namedview4"
+     showgrid="false"
+     inkscape:zoom="0.5"
+     inkscape:cx="487.04185"
+     inkscape:cy="25.329944"
+     inkscape:window-x="0"
+     inkscape:window-y="24"
+     inkscape:window-maximized="1"
+     inkscape:current-layer="svg2"
+     inkscape:showpageshadow="false" />
+  <rect
+     style="fill:#1a1447;fill-opacity:1;stroke:none"
+     id="rect3611"
+     width="880"
+     height="77"
+     x="0"
+     y="0" />
+  <path
+     style="fill:#939ed4;fill-opacity:1;stroke:none"
+     d="M 0,27 0,77 880,77 880,27 0,27 z"
+     id="rect2818"
+     sodipodi:nodetypes="ccccc"
+     inkscape:connector-curvature="0" />
+  <rect
+     style="fill:none;stroke:none"
+     id="rect2818-5"
+     width="141.23457"
+     height="100"
+     x="456.82379"
+     y="10.160921" />
+  <path
+     sodipodi:nodetypes="ccccc"
+     id="path3042"
+     d="m 0,26 0,1 880,0 0,-1 -880,0 z"
+     style="fill:#a7abdc;fill-opacity:1;stroke:none"
+     inkscape:connector-curvature="0" />
+</svg>
index ebc187edf734d58e2226598806576acb53e66d09..fdfb4bff171f60797937da188c4315093ea8ee6f 100644 (file)
Binary files a/cinelerra-5.1/plugins/theme_blue_dot/data/preferences_bg.png and b/cinelerra-5.1/plugins/theme_blue_dot/data/preferences_bg.png differ
index 2d757716ef1ba441b65683dbe4523b34c71ad5d3..7c650edf1969c94984b66ffae35e524fc0eb1d13 100644 (file)
Binary files a/cinelerra-5.1/plugins/theme_bright/data/preferences_bg.png and b/cinelerra-5.1/plugins/theme_bright/data/preferences_bg.png differ
index 01e0e2da401f9a2b353ff4c98c44252041eac807..55ecc580ece60e271c96d1d510ef755ce3b123eb 100644 (file)
Binary files a/cinelerra-5.1/plugins/theme_bright/data/setformat_bg.png and b/cinelerra-5.1/plugins/theme_bright/data/setformat_bg.png differ
index 324225269db1a37649fae73a95669f5b5ae6cda2..a8c5e0570c7bf7d244c5d5716c889911b276ee4c 100644 (file)
Binary files a/cinelerra-5.1/plugins/theme_hulk/data/preferences_bg.png and b/cinelerra-5.1/plugins/theme_hulk/data/preferences_bg.png differ
diff --git a/cinelerra-5.1/plugins/theme_hulk/data/preferences_bg.svg b/cinelerra-5.1/plugins/theme_hulk/data/preferences_bg.svg
new file mode 100644 (file)
index 0000000..10cdadf
--- /dev/null
@@ -0,0 +1,405 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   id="svg2"
+   version="1.1"
+   inkscape:version="0.48.0 r9654"
+   width="880"
+   height="77"
+   sodipodi:docname="preferences_bg.svg">
+  <metadata
+     id="metadata8">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <defs
+     id="defs6">
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective10" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective10-85" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective2895-6" />
+    <linearGradient
+       gradientTransform="matrix(1.0644052,0,0,1,-1.7019555,0)"
+       gradientUnits="userSpaceOnUse"
+       y2="8.9094315"
+       x2="32.828682"
+       y1="8.9094315"
+       x1="16.775095"
+       id="linearGradient3607-1"
+       xlink:href="#linearGradient3601-1"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       id="perspective10-8"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <linearGradient
+       id="linearGradient3601-1">
+      <stop
+         id="stop3603-5"
+         offset="0"
+         style="stop-color:#82d4a9;stop-opacity:1;" />
+      <stop
+         id="stop3605-9"
+         offset="1"
+         style="stop-color:#202020;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3601-1"
+       id="linearGradient2891"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.0644052,0,0,1,-1.7019555,0)"
+       x1="16.775095"
+       y1="8.9094315"
+       x2="32.828682"
+       y2="8.9094315" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3601-1"
+       id="linearGradient2896"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.020055,0,0,1.5515391,-441.05897,-113.20995)"
+       x1="16.775095"
+       y1="8.9094315"
+       x2="32.828682"
+       y2="8.9094315" />
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:menu-tooltip="Drop shadow under the cut-out of the shape"
+       inkscape:menu="Shadows and Glows"
+       height="1"
+       width="1"
+       y="0"
+       x="0"
+       inkscape:label="Cutout"
+       id="filter2855">
+      <feGaussianBlur
+         stdDeviation="4.2"
+         in="SourceAlpha"
+         id="feGaussianBlur2857" />
+      <feOffset
+         result="result91"
+         dx="5"
+         dy="5"
+         id="feOffset2859" />
+      <feComposite
+         in="SourceGraphic"
+         operator="out"
+         in2="result91"
+         id="feComposite2861" />
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+       inkscape:menu="Shadows and Glows"
+       inkscape:label="Inner Shadow"
+       id="filter3632">
+      <feGaussianBlur
+         result="result8"
+         stdDeviation="4"
+         id="feGaussianBlur3634" />
+      <feOffset
+         result="result11"
+         dy="4"
+         dx="4"
+         id="feOffset3636" />
+      <feComposite
+         operator="in"
+         in="SourceGraphic"
+         result="result6"
+         in2="result11"
+         id="feComposite3638" />
+      <feFlood
+         flood-color="rgb(0,0,0)"
+         flood-opacity="1"
+         in="result6"
+         result="result10"
+         id="feFlood3640" />
+      <feBlend
+         result="result12"
+         in="result6"
+         mode="normal"
+         in2="result10"
+         id="feBlend3642" />
+      <feComposite
+         operator="in"
+         result="result2"
+         in2="SourceGraphic"
+         id="feComposite3644" />
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:menu-tooltip="Inner colorized shadow, outer black shadow"
+       inkscape:menu="Shadows and Glows"
+       inkscape:label="In and Out"
+       id="filter8106">
+      <feGaussianBlur
+         stdDeviation="4"
+         in="SourceAlpha"
+         result="result0"
+         id="feGaussianBlur8108" />
+      <feOffset
+         result="result4"
+         dy="5"
+         dx="5"
+         id="feOffset8110" />
+      <feComposite
+         result="result3"
+         operator="xor"
+         in="SourceGraphic"
+         in2="result4"
+         id="feComposite8112" />
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       x="-0.25"
+       y="-0.25"
+       width="1.5"
+       height="1.5"
+       inkscape:menu-tooltip="Strongly raised border around a flat surface"
+       inkscape:menu="Bevels"
+       inkscape:label="Raised border"
+       id="filter8082">
+      <feGaussianBlur
+         result="result1"
+         stdDeviation="4"
+         id="feGaussianBlur8084" />
+      <feComposite
+         operator="in"
+         result="result4"
+         in="result1"
+         in2="result1"
+         id="feComposite8086" />
+      <feGaussianBlur
+         in="result4"
+         result="result6"
+         stdDeviation="2"
+         id="feGaussianBlur8088" />
+      <feComposite
+         result="result8"
+         in="result6"
+         operator="xor"
+         in2="result4"
+         id="feComposite8090" />
+      <feComposite
+         in="result4"
+         result="fbSourceGraphic"
+         operator="atop"
+         in2="result8"
+         id="feComposite8092" />
+      <feSpecularLighting
+         in="fbSourceGraphic"
+         result="result1"
+         lighting-color="#ffffff"
+         surfaceScale="3"
+         specularConstant="1.29999995"
+         specularExponent="10"
+         id="feSpecularLighting8094">
+        <feDistantLight
+           elevation="55"
+           azimuth="235"
+           id="feDistantLight8096" />
+      </feSpecularLighting>
+      <feComposite
+         in="result1"
+         result="result2"
+         operator="atop"
+         in2="fbSourceGraphic"
+         id="feComposite8098" />
+      <feComposite
+         k4="0"
+         k1="0"
+         in="fbSourceGraphic"
+         result="result4"
+         operator="arithmetic"
+         k2="1"
+         k3="1"
+         in2="result2"
+         id="feComposite8100" />
+      <feComposite
+         result="result9"
+         in="result4"
+         operator="over"
+         in2="SourceGraphic"
+         id="feComposite8102" />
+      <feBlend
+         mode="multiply"
+         in2="result2"
+         id="feBlend8104" />
+    </filter>
+    <linearGradient
+       y2="15.76232"
+       x2="40.867283"
+       y1="43.375023"
+       x1="41.195095"
+       gradientTransform="matrix(1,0,0,0.99208547,467.42198,-26.672132)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3419"
+       xlink:href="#linearGradient2817"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient2817">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop2819" />
+      <stop
+         id="stop2827"
+         offset="0.5"
+         style="stop-color:#323232;stop-opacity:1;" />
+      <stop
+         id="stop2825"
+         offset="0.5"
+         style="stop-color:#969696;stop-opacity:1;" />
+      <stop
+         style="stop-color:#c8c8c8;stop-opacity:1;"
+         offset="1"
+         id="stop2821" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective10-9" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2817"
+       id="linearGradient2823"
+       x1="41.195095"
+       y1="43.375023"
+       x2="40.867283"
+       y2="15.76232"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,0.99208547,0,0.12475137)" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective2895" />
+    <linearGradient
+       gradientTransform="matrix(1.0644052,0,0,1,-1.1050113,0)"
+       gradientUnits="userSpaceOnUse"
+       y2="8.9094315"
+       x2="32.828682"
+       y1="8.9094315"
+       x1="16.775095"
+       id="linearGradient3607"
+       xlink:href="#linearGradient3601"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       id="perspective10-1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <linearGradient
+       id="linearGradient3601">
+      <stop
+         id="stop3603"
+         offset="0"
+         style="stop-color:#82d4a9;stop-opacity:1;" />
+      <stop
+         id="stop3605"
+         offset="1"
+         style="stop-color:#202020;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3601-1"
+       id="linearGradient3038"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.020055,0,0,1.5515391,-20.57345,-103.04903)"
+       x1="16.775095"
+       y1="8.9094315"
+       x2="32.828682"
+       y2="8.9094315" />
+  </defs>
+  <sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#560070"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1366"
+     inkscape:window-height="693"
+     id="namedview4"
+     showgrid="false"
+     inkscape:zoom="0.5"
+     inkscape:cx="652.10446"
+     inkscape:cy="25.329944"
+     inkscape:window-x="0"
+     inkscape:window-y="24"
+     inkscape:window-maximized="1"
+     inkscape:current-layer="svg2"
+     inkscape:showpageshadow="false" />
+  <rect
+     style="fill:#75b697;fill-opacity:1;stroke:none"
+     id="rect3611"
+     width="880"
+     height="77"
+     x="0"
+     y="0" />
+  <path
+     style="fill:#82d4a9;fill-opacity:1;stroke:none"
+     d="M 0,27 0,77 880,77 880,27 0,27 z"
+     id="rect2818"
+     sodipodi:nodetypes="ccccc"
+     inkscape:connector-curvature="0" />
+  <rect
+     style="fill:none;stroke:none"
+     id="rect2818-5"
+     width="141.23457"
+     height="100"
+     x="456.82379"
+     y="10.160921" />
+  <path
+     sodipodi:nodetypes="ccccc"
+     id="path3042"
+     d="m 0,26 0,1 880,0 0,-1 -880,0 z"
+     style="fill:#217842;fill-opacity:1;stroke:none"
+     inkscape:connector-curvature="0" />
+</svg>
index ab1ca8817e908f3dbd3c45e810d525085fdccfe0..7fff7ced0048ced7d2af5fa4639f93cf4d136695 100644 (file)
Binary files a/cinelerra-5.1/plugins/theme_pinklady/data/preferences_bg.png and b/cinelerra-5.1/plugins/theme_pinklady/data/preferences_bg.png differ
diff --git a/cinelerra-5.1/plugins/theme_pinklady/data/preferences_bg.svg b/cinelerra-5.1/plugins/theme_pinklady/data/preferences_bg.svg
new file mode 100644 (file)
index 0000000..12ec8c3
--- /dev/null
@@ -0,0 +1,405 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   id="svg2"
+   version="1.1"
+   inkscape:version="0.48.0 r9654"
+   width="880"
+   height="77"
+   sodipodi:docname="preferences_bg.svg">
+  <metadata
+     id="metadata8">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <defs
+     id="defs6">
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective10" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective10-85" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective2895-6" />
+    <linearGradient
+       gradientTransform="matrix(1.0644052,0,0,1,-1.7019555,0)"
+       gradientUnits="userSpaceOnUse"
+       y2="8.9094315"
+       x2="32.828682"
+       y1="8.9094315"
+       x1="16.775095"
+       id="linearGradient3607-1"
+       xlink:href="#linearGradient3601-1"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       id="perspective10-8"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <linearGradient
+       id="linearGradient3601-1">
+      <stop
+         id="stop3603-5"
+         offset="0"
+         style="stop-color:#d46a95;stop-opacity:1;" />
+      <stop
+         id="stop3605-9"
+         offset="1"
+         style="stop-color:#202020;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3601-1"
+       id="linearGradient2891"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.0644052,0,0,1,-1.7019555,0)"
+       x1="16.775095"
+       y1="8.9094315"
+       x2="32.828682"
+       y2="8.9094315" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3601-1"
+       id="linearGradient2896"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.020055,0,0,1.5515391,-441.05897,-113.20995)"
+       x1="16.775095"
+       y1="8.9094315"
+       x2="32.828682"
+       y2="8.9094315" />
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:menu-tooltip="Drop shadow under the cut-out of the shape"
+       inkscape:menu="Shadows and Glows"
+       height="1"
+       width="1"
+       y="0"
+       x="0"
+       inkscape:label="Cutout"
+       id="filter2855">
+      <feGaussianBlur
+         stdDeviation="4.2"
+         in="SourceAlpha"
+         id="feGaussianBlur2857" />
+      <feOffset
+         result="result91"
+         dx="5"
+         dy="5"
+         id="feOffset2859" />
+      <feComposite
+         in="SourceGraphic"
+         operator="out"
+         in2="result91"
+         id="feComposite2861" />
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+       inkscape:menu="Shadows and Glows"
+       inkscape:label="Inner Shadow"
+       id="filter3632">
+      <feGaussianBlur
+         result="result8"
+         stdDeviation="4"
+         id="feGaussianBlur3634" />
+      <feOffset
+         result="result11"
+         dy="4"
+         dx="4"
+         id="feOffset3636" />
+      <feComposite
+         operator="in"
+         in="SourceGraphic"
+         result="result6"
+         in2="result11"
+         id="feComposite3638" />
+      <feFlood
+         flood-color="rgb(0,0,0)"
+         flood-opacity="1"
+         in="result6"
+         result="result10"
+         id="feFlood3640" />
+      <feBlend
+         result="result12"
+         in="result6"
+         mode="normal"
+         in2="result10"
+         id="feBlend3642" />
+      <feComposite
+         operator="in"
+         result="result2"
+         in2="SourceGraphic"
+         id="feComposite3644" />
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:menu-tooltip="Inner colorized shadow, outer black shadow"
+       inkscape:menu="Shadows and Glows"
+       inkscape:label="In and Out"
+       id="filter8106">
+      <feGaussianBlur
+         stdDeviation="4"
+         in="SourceAlpha"
+         result="result0"
+         id="feGaussianBlur8108" />
+      <feOffset
+         result="result4"
+         dy="5"
+         dx="5"
+         id="feOffset8110" />
+      <feComposite
+         result="result3"
+         operator="xor"
+         in="SourceGraphic"
+         in2="result4"
+         id="feComposite8112" />
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       x="-0.25"
+       y="-0.25"
+       width="1.5"
+       height="1.5"
+       inkscape:menu-tooltip="Strongly raised border around a flat surface"
+       inkscape:menu="Bevels"
+       inkscape:label="Raised border"
+       id="filter8082">
+      <feGaussianBlur
+         result="result1"
+         stdDeviation="4"
+         id="feGaussianBlur8084" />
+      <feComposite
+         operator="in"
+         result="result4"
+         in="result1"
+         in2="result1"
+         id="feComposite8086" />
+      <feGaussianBlur
+         in="result4"
+         result="result6"
+         stdDeviation="2"
+         id="feGaussianBlur8088" />
+      <feComposite
+         result="result8"
+         in="result6"
+         operator="xor"
+         in2="result4"
+         id="feComposite8090" />
+      <feComposite
+         in="result4"
+         result="fbSourceGraphic"
+         operator="atop"
+         in2="result8"
+         id="feComposite8092" />
+      <feSpecularLighting
+         in="fbSourceGraphic"
+         result="result1"
+         lighting-color="#ffffff"
+         surfaceScale="3"
+         specularConstant="1.29999995"
+         specularExponent="10"
+         id="feSpecularLighting8094">
+        <feDistantLight
+           elevation="55"
+           azimuth="235"
+           id="feDistantLight8096" />
+      </feSpecularLighting>
+      <feComposite
+         in="result1"
+         result="result2"
+         operator="atop"
+         in2="fbSourceGraphic"
+         id="feComposite8098" />
+      <feComposite
+         k4="0"
+         k1="0"
+         in="fbSourceGraphic"
+         result="result4"
+         operator="arithmetic"
+         k2="1"
+         k3="1"
+         in2="result2"
+         id="feComposite8100" />
+      <feComposite
+         result="result9"
+         in="result4"
+         operator="over"
+         in2="SourceGraphic"
+         id="feComposite8102" />
+      <feBlend
+         mode="multiply"
+         in2="result2"
+         id="feBlend8104" />
+    </filter>
+    <linearGradient
+       y2="15.76232"
+       x2="40.867283"
+       y1="43.375023"
+       x1="41.195095"
+       gradientTransform="matrix(1,0,0,0.99208547,467.42198,-26.672132)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3419"
+       xlink:href="#linearGradient2817"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient2817">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop2819" />
+      <stop
+         id="stop2827"
+         offset="0.5"
+         style="stop-color:#323232;stop-opacity:1;" />
+      <stop
+         id="stop2825"
+         offset="0.5"
+         style="stop-color:#969696;stop-opacity:1;" />
+      <stop
+         style="stop-color:#c8c8c8;stop-opacity:1;"
+         offset="1"
+         id="stop2821" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective10-9" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2817"
+       id="linearGradient2823"
+       x1="41.195095"
+       y1="43.375023"
+       x2="40.867283"
+       y2="15.76232"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,0.99208547,0,0.12475137)" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective2895" />
+    <linearGradient
+       gradientTransform="matrix(1.0644052,0,0,1,-1.1050113,0)"
+       gradientUnits="userSpaceOnUse"
+       y2="8.9094315"
+       x2="32.828682"
+       y1="8.9094315"
+       x1="16.775095"
+       id="linearGradient3607"
+       xlink:href="#linearGradient3601"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       id="perspective10-1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <linearGradient
+       id="linearGradient3601">
+      <stop
+         id="stop3603"
+         offset="0"
+         style="stop-color:#d46a95;stop-opacity:1;" />
+      <stop
+         id="stop3605"
+         offset="1"
+         style="stop-color:#202020;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3601-1"
+       id="linearGradient3038"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.020055,0,0,1.5515391,-20.57345,-103.04903)"
+       x1="16.775095"
+       y1="8.9094315"
+       x2="32.828682"
+       y2="8.9094315" />
+  </defs>
+  <sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#70002d"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1366"
+     inkscape:window-height="693"
+     id="namedview4"
+     showgrid="false"
+     inkscape:zoom="0.5"
+     inkscape:cx="486.66113"
+     inkscape:cy="25.329944"
+     inkscape:window-x="0"
+     inkscape:window-y="24"
+     inkscape:window-maximized="1"
+     inkscape:current-layer="svg2"
+     inkscape:showpageshadow="false" />
+  <rect
+     style="fill:#ffb1d0;fill-opacity:1;stroke:none"
+     id="rect3611"
+     width="880"
+     height="77"
+     x="0"
+     y="0" />
+  <path
+     style="fill:#d46a95;fill-opacity:1;stroke:none"
+     d="M 0,27 0,77 880,77 880,27 0,27 z"
+     id="rect2818"
+     sodipodi:nodetypes="ccccc"
+     inkscape:connector-curvature="0" />
+  <rect
+     style="fill:none;stroke:none"
+     id="rect2818-5"
+     width="141.23457"
+     height="100"
+     x="456.82379"
+     y="10.160921" />
+  <path
+     sodipodi:nodetypes="ccccc"
+     id="path3042"
+     d="m 0,26 0,1 880,0 0,-1 -880,0 z"
+     style="fill:#78216f;fill-opacity:1;stroke:none"
+     inkscape:connector-curvature="0" />
+</svg>
index 64cee16ae7e4e39373d363905f6783f6312490e4..43a1fa18aeb8c2925b1cc70a1236eaaf2c4106fd 100644 (file)
Binary files a/cinelerra-5.1/plugins/theme_suv/data/preferences_bg.png and b/cinelerra-5.1/plugins/theme_suv/data/preferences_bg.png differ
index f0b95fc5f89a9f552166861e52134458a91615e7..29cb20ceaae5c569c57016e84c0fb1fc08ec4106 100644 (file)
Binary files a/cinelerra-5.1/plugins/theme_suv/data/setformat_bg.png and b/cinelerra-5.1/plugins/theme_suv/data/setformat_bg.png differ
index 3e6b298d854355e6dee85f19c79ef500bfc8f86a..6ab007ff817dddc4de35f4710d439127d5d2e49e 100644 (file)
Binary files a/cinelerra-5.1/plugins/theme_unflat/data/preferences_bg.png and b/cinelerra-5.1/plugins/theme_unflat/data/preferences_bg.png differ
diff --git a/cinelerra-5.1/plugins/theme_unflat/data/preferences_bg.svg b/cinelerra-5.1/plugins/theme_unflat/data/preferences_bg.svg
new file mode 100644 (file)
index 0000000..2d7ab16
--- /dev/null
@@ -0,0 +1,404 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   id="svg2"
+   version="1.1"
+   inkscape:version="0.48.0 r9654"
+   width="880"
+   height="77"
+   sodipodi:docname="preferences_bg.svg">
+  <metadata
+     id="metadata8">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <defs
+     id="defs6">
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective10" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective10-85" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective2895-6" />
+    <linearGradient
+       gradientTransform="matrix(1.0644052,0,0,1,-1.7019555,0)"
+       gradientUnits="userSpaceOnUse"
+       y2="8.9094315"
+       x2="32.828682"
+       y1="8.9094315"
+       x1="16.775095"
+       id="linearGradient3607-1"
+       xlink:href="#linearGradient3601-1"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       id="perspective10-8"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <linearGradient
+       id="linearGradient3601-1">
+      <stop
+         id="stop3603-5"
+         offset="0"
+         style="stop-color:#4d4d4d;stop-opacity:1;" />
+      <stop
+         id="stop3605-9"
+         offset="1"
+         style="stop-color:#202020;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3601-1"
+       id="linearGradient2891"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.0644052,0,0,1,-1.7019555,0)"
+       x1="16.775095"
+       y1="8.9094315"
+       x2="32.828682"
+       y2="8.9094315" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3601-1"
+       id="linearGradient2896"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.020055,0,0,1.5515391,-441.05897,-113.20995)"
+       x1="16.775095"
+       y1="8.9094315"
+       x2="32.828682"
+       y2="8.9094315" />
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:menu-tooltip="Drop shadow under the cut-out of the shape"
+       inkscape:menu="Shadows and Glows"
+       height="1"
+       width="1"
+       y="0"
+       x="0"
+       inkscape:label="Cutout"
+       id="filter2855">
+      <feGaussianBlur
+         stdDeviation="4.2"
+         in="SourceAlpha"
+         id="feGaussianBlur2857" />
+      <feOffset
+         result="result91"
+         dx="5"
+         dy="5"
+         id="feOffset2859" />
+      <feComposite
+         in="SourceGraphic"
+         operator="out"
+         in2="result91"
+         id="feComposite2861" />
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+       inkscape:menu="Shadows and Glows"
+       inkscape:label="Inner Shadow"
+       id="filter3632">
+      <feGaussianBlur
+         result="result8"
+         stdDeviation="4"
+         id="feGaussianBlur3634" />
+      <feOffset
+         result="result11"
+         dy="4"
+         dx="4"
+         id="feOffset3636" />
+      <feComposite
+         operator="in"
+         in="SourceGraphic"
+         result="result6"
+         in2="result11"
+         id="feComposite3638" />
+      <feFlood
+         flood-color="rgb(0,0,0)"
+         flood-opacity="1"
+         in="result6"
+         result="result10"
+         id="feFlood3640" />
+      <feBlend
+         result="result12"
+         in="result6"
+         mode="normal"
+         in2="result10"
+         id="feBlend3642" />
+      <feComposite
+         operator="in"
+         result="result2"
+         in2="SourceGraphic"
+         id="feComposite3644" />
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:menu-tooltip="Inner colorized shadow, outer black shadow"
+       inkscape:menu="Shadows and Glows"
+       inkscape:label="In and Out"
+       id="filter8106">
+      <feGaussianBlur
+         stdDeviation="4"
+         in="SourceAlpha"
+         result="result0"
+         id="feGaussianBlur8108" />
+      <feOffset
+         result="result4"
+         dy="5"
+         dx="5"
+         id="feOffset8110" />
+      <feComposite
+         result="result3"
+         operator="xor"
+         in="SourceGraphic"
+         in2="result4"
+         id="feComposite8112" />
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       x="-0.25"
+       y="-0.25"
+       width="1.5"
+       height="1.5"
+       inkscape:menu-tooltip="Strongly raised border around a flat surface"
+       inkscape:menu="Bevels"
+       inkscape:label="Raised border"
+       id="filter8082">
+      <feGaussianBlur
+         result="result1"
+         stdDeviation="4"
+         id="feGaussianBlur8084" />
+      <feComposite
+         operator="in"
+         result="result4"
+         in="result1"
+         in2="result1"
+         id="feComposite8086" />
+      <feGaussianBlur
+         in="result4"
+         result="result6"
+         stdDeviation="2"
+         id="feGaussianBlur8088" />
+      <feComposite
+         result="result8"
+         in="result6"
+         operator="xor"
+         in2="result4"
+         id="feComposite8090" />
+      <feComposite
+         in="result4"
+         result="fbSourceGraphic"
+         operator="atop"
+         in2="result8"
+         id="feComposite8092" />
+      <feSpecularLighting
+         in="fbSourceGraphic"
+         result="result1"
+         lighting-color="#ffffff"
+         surfaceScale="3"
+         specularConstant="1.29999995"
+         specularExponent="10"
+         id="feSpecularLighting8094">
+        <feDistantLight
+           elevation="55"
+           azimuth="235"
+           id="feDistantLight8096" />
+      </feSpecularLighting>
+      <feComposite
+         in="result1"
+         result="result2"
+         operator="atop"
+         in2="fbSourceGraphic"
+         id="feComposite8098" />
+      <feComposite
+         k4="0"
+         k1="0"
+         in="fbSourceGraphic"
+         result="result4"
+         operator="arithmetic"
+         k2="1"
+         k3="1"
+         in2="result2"
+         id="feComposite8100" />
+      <feComposite
+         result="result9"
+         in="result4"
+         operator="over"
+         in2="SourceGraphic"
+         id="feComposite8102" />
+      <feBlend
+         mode="multiply"
+         in2="result2"
+         id="feBlend8104" />
+    </filter>
+    <linearGradient
+       y2="15.76232"
+       x2="40.867283"
+       y1="43.375023"
+       x1="41.195095"
+       gradientTransform="matrix(1,0,0,0.99208547,467.42198,-26.672132)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3419"
+       xlink:href="#linearGradient2817"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient2817">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop2819" />
+      <stop
+         id="stop2827"
+         offset="0.5"
+         style="stop-color:#323232;stop-opacity:1;" />
+      <stop
+         id="stop2825"
+         offset="0.5"
+         style="stop-color:#969696;stop-opacity:1;" />
+      <stop
+         style="stop-color:#c8c8c8;stop-opacity:1;"
+         offset="1"
+         id="stop2821" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective10-9" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2817"
+       id="linearGradient2823"
+       x1="41.195095"
+       y1="43.375023"
+       x2="40.867283"
+       y2="15.76232"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,0.99208547,0,0.12475137)" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective2895" />
+    <linearGradient
+       gradientTransform="matrix(1.0644052,0,0,1,-1.1050113,0)"
+       gradientUnits="userSpaceOnUse"
+       y2="8.9094315"
+       x2="32.828682"
+       y1="8.9094315"
+       x1="16.775095"
+       id="linearGradient3607"
+       xlink:href="#linearGradient3601"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       id="perspective10-1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <linearGradient
+       id="linearGradient3601">
+      <stop
+         id="stop3603"
+         offset="0"
+         style="stop-color:#4d4d4d;stop-opacity:1;" />
+      <stop
+         id="stop3605"
+         offset="1"
+         style="stop-color:#202020;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3601-1"
+       id="linearGradient3038"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.020055,0,0,1.5515391,-20.57345,-103.04903)"
+       x1="16.775095"
+       y1="8.9094315"
+       x2="32.828682"
+       y2="8.9094315" />
+  </defs>
+  <sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1366"
+     inkscape:window-height="693"
+     id="namedview4"
+     showgrid="false"
+     inkscape:zoom="1"
+     inkscape:cx="487.04185"
+     inkscape:cy="25.329944"
+     inkscape:window-x="0"
+     inkscape:window-y="24"
+     inkscape:window-maximized="1"
+     inkscape:current-layer="svg2" />
+  <rect
+     style="fill:#333333;fill-opacity:1;stroke:none"
+     id="rect3611"
+     width="880"
+     height="77"
+     x="0"
+     y="0" />
+  <path
+     style="fill:#4d4d4d;fill-opacity:1;stroke:none"
+     d="m -1,28 0,50 880,0 0,-50 -880,0 z"
+     id="rect2818"
+     sodipodi:nodetypes="ccccc"
+     inkscape:connector-curvature="0" />
+  <rect
+     style="fill:none;stroke:none"
+     id="rect2818-5"
+     width="130"
+     height="100"
+     x="420.48553"
+     y="10.160921" />
+  <path
+     sodipodi:nodetypes="ccccc"
+     id="path3042"
+     d="m 0,26 0,1 880,0 0,-1 -880,0 z"
+     style="fill:#989898;fill-opacity:1;stroke:none"
+     inkscape:connector-curvature="0" />
+</svg>
index b6e7b5984222ef75c672bdbb12b66ab3f6be340d..f5f19e6a03723cdea069c97baf636737b1302825 100644 (file)
@@ -1,13 +1,14 @@
-# Cinelerra 5.1
-# Copyright (C) 2016
-# This file is distributed under the same license as Cinelerra 5.1.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
 #
 
 msgid ""
 msgstr "Project-Id-Version: Cinelerra 5.1\n"
 "Report-Msgid-Bugs-To: [email protected]\n"
-"POT-Creation-Date: 2016-07-29 12:30+0300\n"
-"PO-Revision-Date: 2016-07-29 23:54+0300\n"
+"POT-Creation-Date: 2016-09-22 12:30+0300\n"
+"PO-Revision-Date: 2016-09-22 23:54+0300\n"
 "Last-Translator: Igor Vladimirsky aka igor_ubuntu <[email protected]>\n"
 "Language-Team: <[email protected]>\n"
 "Language: ru_RU\n"
@@ -16,14 +17,14 @@ msgstr "Project-Id-Version: Cinelerra 5.1\n"
 "Content-Transfer-Encoding: 8bit\n"
 
 #: guicast//bcbutton.C:268 guicast//bcbutton.C:276 guicast//bcbutton.C:492
-#: cinelerra//preferencesthread.C:613
+#: cinelerra//preferencesthread.C:614
 msgid "OK"
 msgstr "ОК"
 
 #: guicast//bcbutton.C:324 guicast//bcbutton.C:332 guicast//bcbutton.C:340
 #: guicast//bcbutton.C:519 guicast//bcbutton.C:521 guicast//bcbutton.C:528
 #: cinelerra//confirmquit.C:107 cinelerra//confirmquit.C:109
-#: cinelerra//preferencesthread.C:637 cinelerra//preferencesthread.C:639
+#: cinelerra//preferencesthread.C:638 cinelerra//preferencesthread.C:640
 msgid "Cancel"
 msgstr "Прервать"
 
@@ -40,7 +41,7 @@ msgstr "DISPLAY' environment variable not set.\n"
 
 #: guicast//bcdelete.C:69
 msgid "Really delete the following files?"
-msgstr ""
+msgstr "Действительно хотите удалить файлы ?"
 
 #: guicast//bcdisplayinfo.C:239
 #, c-format
@@ -104,15 +105,15 @@ msgstr "Обновить"
 
 #: guicast//bcfilebox.C:1301 cinelerra//newfolder.C:37
 msgid ": New folder"
-msgstr "Новая папка"
+msgstr "Новая папка"
 
 #: guicast//bcfilebox.C:1316
 msgid ": Rename"
-msgstr ": Переименовать"
+msgstr ": Переименование"
 
 #: guicast//bcfilebox.C:1331
 msgid ": Delete"
-msgstr "Удалить"
+msgstr ": Удаление"
 
 #: guicast//bcfilebox.inc:42 cinelerra//mainmenu.C:99
 #: plugins/reverb/reverbwindow.C:239
@@ -140,7 +141,7 @@ msgstr "Введите имя папки:"
 msgid "Untitled"
 msgstr "Безымянный"
 
-#: guicast//bcpopup.C:36 guicast//bcpopup.C:54 cinelerra//canvas.C:1223
+#: guicast//bcpopup.C:36 guicast//bcpopup.C:54 cinelerra//canvas.C:1195
 msgid "Fullscreen"
 msgstr "Полный экран"
 
@@ -160,7 +161,7 @@ msgstr "Выбрать из недавно использованных"
 msgid "Enter a new name for the file:"
 msgstr "Введите новое имя для файла"
 
-#: guicast//bcresources.C:1492
+#: guicast//bcresources.C:1493
 #, c-format
 msgid "Conversion from %s to %s is not available\n"
 msgstr "Конвертация из %s в %s недоступна.\n"
@@ -180,7 +181,7 @@ msgstr "BC_Theme::check_used: Images aren't used.\n"
 msgid "%s: opengl initialization failed failed\n"
 msgstr "%s: opengl initialization failed failed\n"
 
-#: guicast//bcwindowbase.C:210
+#: guicast//bcwindowbase.C:212
 #, c-format
 msgid ""
 "BC_WindowBase::~BC_WindowBase window deleted but opengl deletion is not\n"
@@ -227,7 +228,7 @@ msgstr "Футы+кадры"
 msgid "Hours:Minutes:Seconds"
 msgstr "Часы:Мин:Сек."
 
-#: guicast//units.h:71 cinelerra//interfaceprefs.C:224
+#: guicast//units.h:71 cinelerra//interfaceprefs.C:229
 #: cinelerra//patchbay.C:93
 msgid "Seconds"
 msgstr "Секунды"
@@ -275,54 +276,54 @@ msgstr ""
 msgid "Device path:"
 msgstr "Путь к устройству:"
 
-#: cinelerra//adeviceprefs.C:318 cinelerra//adeviceprefs.C:384
-#: cinelerra//adeviceprefs.C:569 cinelerra//adeviceprefs.C:586
-#: cinelerra//adeviceprefs.C:588 cinelerra//assetedit.C:415
+#: cinelerra//adeviceprefs.C:318 cinelerra//adeviceprefs.C:385
+#: cinelerra//adeviceprefs.C:570 cinelerra//adeviceprefs.C:587
+#: cinelerra//adeviceprefs.C:589 cinelerra//assetedit.C:415
 #: cinelerra//fileformat.C:89 cinelerra//formatwindow.C:48
 msgid "Bits:"
 msgstr "Биты:"
 
-#: cinelerra//adeviceprefs.C:365
+#: cinelerra//adeviceprefs.C:366
 msgid "Device:"
 msgstr "Устройство:"
 
-#: cinelerra//adeviceprefs.C:396
+#: cinelerra//adeviceprefs.C:397
 msgid "Stop playback locks up."
 msgstr "Предотвращать воспроизведение аудио после остановки"
 
-#: cinelerra//adeviceprefs.C:423
+#: cinelerra//adeviceprefs.C:424
 msgid "Server:"
 msgstr "Сервер:"
 
-#: cinelerra//adeviceprefs.C:441 cinelerra//adeviceprefs.C:492
-#: cinelerra//interfaceprefs.C:199 cinelerra//performanceprefs.C:202
+#: cinelerra//adeviceprefs.C:442 cinelerra//adeviceprefs.C:493
+#: cinelerra//interfaceprefs.C:204 cinelerra//performanceprefs.C:202
 #: cinelerra//vdeviceprefs.C:347
 msgid "Port:"
 msgstr "Порт:"
 
-#: cinelerra//adeviceprefs.C:472 cinelerra//vdeviceprefs.C:329
+#: cinelerra//adeviceprefs.C:473 cinelerra//vdeviceprefs.C:329
 msgid "Device Path:"
 msgstr "Путь к устройству:"
 
-#: cinelerra//adeviceprefs.C:512 cinelerra//channeledit.C:1037
+#: cinelerra//adeviceprefs.C:513 cinelerra//channeledit.C:1037
 #: cinelerra//vdeviceprefs.C:365
 msgid "Channel:"
 msgstr "Канал:"
 
-#: cinelerra//adeviceprefs.C:536 cinelerra//vdeviceprefs.C:388
+#: cinelerra//adeviceprefs.C:537 cinelerra//vdeviceprefs.C:388
 msgid "Syt Offset:"
 msgstr "SYT сдвиг:"
 
-#: cinelerra//adeviceprefs.C:554 cinelerra//adeviceprefs.C:556
+#: cinelerra//adeviceprefs.C:555 cinelerra//adeviceprefs.C:557
 #: cinelerra//vdeviceprefs.C:217 cinelerra//vdeviceprefs.C:219
 msgid "DVB Adapter:"
 msgstr "DVB адаптер:"
 
-#: cinelerra//adeviceprefs.C:562 cinelerra//vdeviceprefs.C:224
+#: cinelerra//adeviceprefs.C:563 cinelerra//vdeviceprefs.C:224
 msgid "dev:"
-msgstr ""
+msgstr "dev:"
 
-#: cinelerra//adeviceprefs.C:577 cinelerra//adeviceprefs.C:596
+#: cinelerra//adeviceprefs.C:578 cinelerra//adeviceprefs.C:597
 msgid "Follow audio config"
 msgstr ""
 
@@ -340,7 +341,8 @@ msgstr ""
 msgid "Plugin %d"
 msgstr ""
 
-#: cinelerra//apanel.C:89 cinelerra//mainmenu.C:233
+#: cinelerra//apanel.C:89 cinelerra//keyframepopup.C:582
+#: cinelerra//mainmenu.C:232
 msgid "Mute"
 msgstr "Глушение"
 
@@ -348,17 +350,17 @@ msgstr "Глушение"
 msgid "Play"
 msgstr ""
 
-#: cinelerra//apatchgui.C:246 cinelerra//apatchgui.C:253
-#: cinelerra//vpatchgui.C:202 cinelerra//vpatchgui.C:209
+#: cinelerra//apatchgui.C:244 cinelerra//apatchgui.C:251
+#: cinelerra//vpatchgui.C:192 cinelerra//vpatchgui.C:199
 #: plugins/bluebanana/bluebananawindow.C:2005
 msgid "fade"
 msgstr "фейд"
 
-#: cinelerra//apatchgui.C:310 cinelerra//mainmenu.C:235
+#: cinelerra//apatchgui.C:330 cinelerra//mainmenu.C:234
 msgid "Pan"
 msgstr "Панорама"
 
-#: cinelerra//apatchgui.C:320 cinelerra//apatchgui.C:328
+#: cinelerra//apatchgui.C:340 cinelerra//apatchgui.C:348
 msgid "pan"
 msgstr "панорама"
 
@@ -397,7 +399,7 @@ msgstr "Аудио:"
 msgid "Compression:"
 msgstr "Сжатие:"
 
-#: cinelerra//assetedit.C:374 cinelerra//fileformat.C:77 cinelerra//new.C:290
+#: cinelerra//assetedit.C:374 cinelerra//fileformat.C:77 cinelerra//new.C:289
 #: cinelerra//setformat.C:354 plugins/livevideo/livevideo.C:226
 msgid "Channels:"
 msgstr "Каналы:"
@@ -490,19 +492,19 @@ msgstr "Автоматическая коррекция ч."
 
 #: cinelerra//assetedit.C:989
 msgid "Detail"
-msgstr ""
+msgstr "Подробнее"
 
 #: cinelerra//assetedit.C:1006
 msgid "Asset Detail"
-msgstr ""
+msgstr "Подробная информация о ресурсе"
 
 #: cinelerra//assetedit.C:1051
 msgid "no info available"
-msgstr ""
+msgstr "нет доступной информации"
 
 #: cinelerra//assetedit.h:109
 msgid ": Path"
-msgstr ""
+msgstr ": Путь"
 
 #: cinelerra//assetedit.h:110
 msgid "Select a file"
@@ -520,13 +522,13 @@ msgstr "Переиндексировать"
 msgid "Sort items"
 msgstr "Упорядочить"
 
-#: cinelerra//assetpopup.C:224 cinelerra//mainmenu.C:228
+#: cinelerra//assetpopup.C:224 cinelerra//mainmenu.C:227
 msgid "View"
 msgstr "Вид"
 
 #: cinelerra//assetpopup.C:258
 msgid "View in new window"
-msgstr ""
+msgstr "Вид (просмотр) в новом окне"
 
 #: cinelerra//assetpopup.C:295 cinelerra//mainmenu.C:870
 #: cinelerra//swindow.C:555
@@ -631,84 +633,84 @@ msgstr "В конец ( End )"
 
 #: cinelerra//awindowgui.C:400
 msgid ": Resources"
-msgstr ""
+msgstr ": Ресурсы"
 
-#: cinelerra//awindowgui.C:495 cinelerra//awindowgui.C:1251
-#: cinelerra//awindowgui.C:1278 cinelerra//channelinfo.C:340
+#: cinelerra//awindowgui.C:495 cinelerra//awindowgui.C:1242
+#: cinelerra//awindowgui.C:1269 cinelerra//channelinfo.C:340
 #: cinelerra//dbwindow.C:591 plugins/titler/title.C:1128
 msgid "Title"
 msgstr "Титры"
 
-#: cinelerra//awindowgui.C:496 cinelerra//awindowgui.C:1252
+#: cinelerra//awindowgui.C:496 cinelerra//awindowgui.C:1243
 msgid "Comments"
 msgstr "Комментарии"
 
-#: cinelerra//awindowgui.C:594
+#: cinelerra//awindowgui.C:588
 msgid "Visibility"
-msgstr ""
+msgstr "Обзор"
 
-#: cinelerra//awindowgui.C:744
+#: cinelerra//awindowgui.C:735
 msgid ": Remove plugin"
 msgstr ": Удаление плагина"
 
-#: cinelerra//awindowgui.C:769
+#: cinelerra//awindowgui.C:760
 msgid "remove plugin?"
-msgstr "удалить плагин ?"
+msgstr "Удалить плагин ?"
 
-#: cinelerra//awindowgui.C:797
+#: cinelerra//awindowgui.C:788
 #, c-format
 msgid "remove %s\n"
 msgstr "удаление %s\n"
 
-#: cinelerra//awindowgui.C:1277
+#: cinelerra//awindowgui.C:1268
 msgid "Time Stamps"
 msgstr "Отметки времени"
 
-#: cinelerra//awindowgui.C:1828
+#: cinelerra//awindowgui.C:1824
 msgid "New bin"
 msgstr "Новая корзина"
 
-#: cinelerra//awindowgui.C:1842
+#: cinelerra//awindowgui.C:1838
 msgid "Delete bin"
 msgstr "Удалить корзину"
 
-#: cinelerra//awindowgui.C:1860
+#: cinelerra//awindowgui.C:1856
 msgid "Rename bin"
 msgstr "Переименовать корзину"
 
-#: cinelerra//awindowgui.C:1873
+#: cinelerra//awindowgui.C:1869
 msgid "Delete asset from disk"
 msgstr "Удалить ресурс с диска"
 
-#: cinelerra//awindowgui.C:1886
+#: cinelerra//awindowgui.C:1882
 msgid "Delete asset from project"
 msgstr "Удалить ресурс из проекта"
 
-#: cinelerra//awindowgui.C:1899
+#: cinelerra//awindowgui.C:1895
 msgid "Edit information on asset"
 msgstr "Редактировать информацию о ресурсе"
 
-#: cinelerra//awindowgui.C:1913
+#: cinelerra//awindowgui.C:1909
 msgid "Redraw index"
 msgstr "Переиндексировать"
 
-#: cinelerra//awindowgui.C:1926
+#: cinelerra//awindowgui.C:1922
 msgid "Paste asset on recordable tracks"
 msgstr "Вставить ресурс на дорожки, доступные для правки"
 
-#: cinelerra//awindowgui.C:1939
+#: cinelerra//awindowgui.C:1935
 msgid "Append asset in new tracks"
 msgstr "Добавить ресурс на новые дорожки"
 
-#: cinelerra//awindowgui.C:1952
+#: cinelerra//awindowgui.C:1948
 msgid "View asset"
 msgstr "Показать ресурс"
 
-#: cinelerra//awindowgui.C:1990 cinelerra//channeledit.C:600
+#: cinelerra//awindowgui.C:1986 cinelerra//channeledit.C:600
 msgid "Edit..."
 msgstr "Правка..."
 
-#: cinelerra//awindowgui.C:2073
+#: cinelerra//awindowgui.C:2069
 msgid "draw vicons"
 msgstr ""
 
@@ -746,8 +748,8 @@ msgstr "Временной"
 
 #: cinelerra//batch.C:141 cinelerra//batchrender.C:939
 #: cinelerra//ffmpeg.C:2167 cinelerra//ffmpeg.C:2277 cinelerra//file.C:1359
-#: cinelerra//file.C:1387 cinelerra//interfaceprefs.C:842
-#: cinelerra//loadmode.C:93 cinelerra//new.C:858 cinelerra//record.C:725
+#: cinelerra//file.C:1387 cinelerra//interfaceprefs.C:871
+#: cinelerra//loadmode.C:93 cinelerra//new.C:857 cinelerra//record.C:725
 #: cinelerra//vdeviceprefs.C:752 plugins/motion2point/motionwindow.C:801
 #: plugins/motion2point/motionwindow.C:872 plugins/timefront/timefront.C:419
 msgid "Unknown"
@@ -848,7 +850,7 @@ msgstr "Стоп"
 msgid "Close"
 msgstr "Закрыть"
 
-#: cinelerra//batchrender.C:1051 cinelerra//new.C:57 cinelerra//new.C:140
+#: cinelerra//batchrender.C:1051 cinelerra//new.C:57 cinelerra//new.C:139
 #: cinelerra//recordbatches.C:489
 msgid "New"
 msgstr "Новый"
@@ -987,7 +989,7 @@ msgstr ""
 
 #: cinelerra//bdcreate.C:600 cinelerra//dvdcreate.C:708
 msgid "Audio 5.1"
-msgstr ""
+msgstr "Аудио 5.1"
 
 #: cinelerra//bdcreate.C:611
 msgid ": Create BD"
@@ -1012,7 +1014,7 @@ msgstr ""
 
 #: cinelerra//bdcreate.C:662 cinelerra//dvdcreate.C:782
 msgid "Media:"
-msgstr "мультимедиа:"
+msgstr ""
 
 #: cinelerra//bdcreate.C:673 cinelerra//dvdcreate.C:793
 #: cinelerra//recordgui.C:223
@@ -1037,7 +1039,7 @@ msgstr "Масштаб"
 
 #: cinelerra//brender.C:153
 msgid "BRender::fork_background: can't open /proc/self/cmdline.\n"
-msgstr "BRender::fork_background: невозможно открыть /proc/self/cmdline.\n"
+msgstr "BRender::fork_background: can't open /proc/self/cmdline.\n"
 
 #: cinelerra//brender.C:263
 #, c-format
@@ -1053,80 +1055,80 @@ msgstr "BRender::set_video_map %jd: attempt to set beyond end of map %jd.\n"
 msgid "Look for file"
 msgstr "Поиск файла"
 
-#: cinelerra//canvas.C:1062
+#: cinelerra//canvas.C:1033
 msgid "Windowed"
 msgstr "В окне"
 
-#: cinelerra//canvas.C:1097
+#: cinelerra//canvas.C:1069
 msgid "Zoom 25%"
-msgstr "Zoom 25%"
+msgstr "Масштаб 25%"
 #msgstr "Zoom 25%"
 
-#: cinelerra//canvas.C:1098
+#: cinelerra//canvas.C:1070
 msgid "Zoom 33%"
-msgstr "Zoom 33%"
+msgstr "Масштаб 33%"
 #msgstr "Zoom 33%"
 
-#: cinelerra//canvas.C:1099
+#: cinelerra//canvas.C:1071
 msgid "Zoom 50%"
-msgstr "Zoom 50%"
+msgstr "Масштаб 50%"
 #msgstr "Zoom 50%"
 
-#: cinelerra//canvas.C:1100
+#: cinelerra//canvas.C:1072
 msgid "Zoom 75%"
-msgstr "Zoom 75%"
+msgstr "Масштаб 75%"
 #msgstr "Zoom 75%"
 
-#: cinelerra//canvas.C:1101 cinelerra//recordmonitor.C:852
+#: cinelerra//canvas.C:1073 cinelerra//recordmonitor.C:858
 msgid "Zoom 100%"
-msgstr "Zoom 100%"
+msgstr "Масштаб 100%"
 #msgstr "Zoom 100%"
 
-#: cinelerra//canvas.C:1102
+#: cinelerra//canvas.C:1074
 msgid "Zoom 150%"
-msgstr "Zoom 150%"
+msgstr "Масштаб 150%"
 #msgstr "Zoom 150%"
 
-#: cinelerra//canvas.C:1103
+#: cinelerra//canvas.C:1075
 msgid "Zoom 200%"
-msgstr "Zoom 200%"
+msgstr "Масштаб 200%"
 #msgstr "Zoom 200%"
 
-#: cinelerra//canvas.C:1104
+#: cinelerra//canvas.C:1076
 msgid "Zoom 300%"
-msgstr "Zoom 300%"
+msgstr "Масштаб 300%"
 #msgstr "Zoom 300%"
 
-#: cinelerra//canvas.C:1105
+#: cinelerra//canvas.C:1077
 msgid "Zoom 400%"
-msgstr "Zoom 400%"
+msgstr "Масштаб 400%"
 #msgstr "Zoom 400%"
 
-#: cinelerra//canvas.C:1128
+#: cinelerra//canvas.C:1100
 msgid "Zoom Auto"
 msgstr "Авто масштаб"
 
-#: cinelerra//canvas.C:1158
+#: cinelerra//canvas.C:1130
 msgid "Reset camera"
 msgstr "Сброс камеры"
 
-#: cinelerra//canvas.C:1171
+#: cinelerra//canvas.C:1143
 msgid "Reset projector"
 msgstr "Сброс проектора"
 
-#: cinelerra//canvas.C:1184
+#: cinelerra//canvas.C:1156
 msgid "Reset translation"
 msgstr "Сбросить перемещение"
 
-#: cinelerra//canvas.C:1211 cinelerra//plugintoggles.C:77
+#: cinelerra//canvas.C:1183 cinelerra//plugintoggles.C:77
 msgid "Show controls"
 msgstr "Показать управление"
 
-#: cinelerra//canvas.C:1213
+#: cinelerra//canvas.C:1185
 msgid "Hide controls"
 msgstr "Скрыть управление"
 
-#: cinelerra//canvas.C:1244
+#: cinelerra//canvas.C:1216
 msgid "Close source"
 msgstr "Закрыть источник"
 
@@ -1211,7 +1213,7 @@ msgstr "Ничего"
 
 #: cinelerra//channeledit.C:163
 msgid ": Channels"
-msgstr ""
+msgstr ": Каналы"
 
 #: cinelerra//channeledit.C:481
 msgid "Select"
@@ -1245,7 +1247,7 @@ msgstr "Изображение..."
 
 #: cinelerra//channeledit.C:642
 msgid ": Scan confirm"
-msgstr ""
+msgstr ": Подтвержд-е сканир-я"
 
 #: cinelerra//channeledit.C:661
 msgid "Set parameters for channel scanning."
@@ -1274,7 +1276,7 @@ msgstr ""
 
 #: cinelerra//channeledit.C:994
 msgid ": Edit Channel"
-msgstr ""
+msgstr ": Правка канала"
 
 #: cinelerra//channeledit.C:1055
 msgid "Fine:"
@@ -1282,11 +1284,12 @@ msgstr "Подстройка:"
 
 #: cinelerra//channeledit.C:1390
 msgid ": Picture"
-msgstr ""
+msgstr ": Изображение"
 
 #: cinelerra//channeledit.C:1449
 msgid "Device has no picture controls."
-msgstr ""
+msgstr "Устройство не имеет настроек\n"
+"изображения."
 
 #: cinelerra//channeledit.C:1458 cinelerra//channeledit.C:1523
 #: plugins/brightness/brightnesswindow.C:54
@@ -1456,12 +1459,12 @@ msgstr "Идёт процесс записи\n"
 #: cinelerra//channelinfo.C:1682
 #, c-format
 msgid "capture driver not dvb\n"
-msgstr ""
+msgstr "драйвер захвата не dvb\n"
 
 #: cinelerra//channelinfo.C:1752
 #, c-format
 msgid "cannot open dvb video device\n"
-msgstr ""
+msgstr "невозможно открыть dvb видеоустройство\n"
 
 #: cinelerra//channelinfo.C:1791
 msgid "Scan..."
@@ -1511,7 +1514,7 @@ msgstr "Комментарии:"
 
 #: cinelerra//colorpicker.C:83
 msgid ": "
-msgstr ""
+msgstr ""
 
 #: cinelerra//colorpicker.C:87
 msgid "Color Picker"
@@ -2105,7 +2108,7 @@ msgstr ": Удалить все индекс. файлы"
 #: cinelerra//devicedvbinput.C:403
 #, c-format
 msgid "** %scarrier, dvb_locked %s\n"
-msgstr ""
+msgstr "** %scarrier, dvb_locked %s\n"
 
 #: cinelerra//devicedvbinput.C:404
 msgid "no "
@@ -2176,7 +2179,7 @@ msgstr ""
 
 #: cinelerra//editlength.C:132
 msgid ": Edit length"
-msgstr ""
+msgstr ": Длина объекта"
 
 #: cinelerra//editlength.C:155 cinelerra//transitionpopup.C:119
 msgid "Seconds:"
@@ -2200,11 +2203,13 @@ msgstr "Предыдущая метка ( ctrl <- )"
 
 #: cinelerra//editpanel.C:767
 msgid "Next edit ( alt -> )"
-msgstr ""
+msgstr "Переход курсора вправо\n"
+"к границе редактирования ( alt -> )."
 
 #: cinelerra//editpanel.C:794
 msgid "Previous edit (alt <- )"
-msgstr ""
+msgstr "Переход курсора влево\n"
+"к границе редактирования ( alt <- )."
 
 #: cinelerra//editpanel.C:818
 msgid "Lift"
@@ -2244,11 +2249,11 @@ msgstr "Копировать ( c )"
 
 #: cinelerra//editpanel.C:1044
 msgid "Append to end of track"
-msgstr ""
+msgstr "Добавить в конец дорожки"
 
 #: cinelerra//editpanel.C:1062
 msgid "Insert before beginning of track"
-msgstr ""
+msgstr "Вставить в начало дорожки"
 
 #: cinelerra//editpanel.C:1081
 msgid "Paste ( v )"
@@ -2339,6 +2344,34 @@ msgstr ": Задать название"
 msgid "User title"
 msgstr "Собственное название"
 
+#: cinelerra//edl.inc:58
+msgid "Audio Effects"
+msgstr "Аудиоэффекты"
+
+#: cinelerra//edl.inc:59
+msgid "Video Effects"
+msgstr "Видеоэффекты"
+
+#: cinelerra//edl.inc:60
+msgid "Audio Transitions"
+msgstr "Аудиопереходы"
+
+#: cinelerra//edl.inc:61
+msgid "Video Transitions"
+msgstr "Видеопереходы"
+
+#: cinelerra//edl.inc:63
+msgid "Labels"
+msgstr "Метки"
+
+#: cinelerra//edl.inc:66
+msgid "Clips"
+msgstr "Клипы"
+
+#: cinelerra//edl.inc:67
+msgid "Media"
+msgstr "Медиаданные"
+
 #: cinelerra//edlsession.C:253 plugins/crossfade/crossfade.C:46
 #, c-format
 msgid "Crossfade"
@@ -2476,7 +2509,7 @@ msgstr ""
 #: cinelerra//ffmpeg.C:1676
 #, c-format
 msgid "get_encoder failed %s:%s\n"
-msgstr ""
+msgstr "get_encoder failed %s:%s\n"
 
 #: cinelerra//ffmpeg.C:1692
 #, c-format
@@ -2586,7 +2619,7 @@ msgstr ": Сжатие аудио"
 
 #: cinelerra//fileac3.C:357
 msgid "Bitrate (kbps):"
-msgstr ""
+msgstr "Битрейт (kbps):"
 
 #: cinelerra//file.C:281
 msgid "This format doesn't support audio."
@@ -2608,7 +2641,7 @@ msgstr "Hi Lo"
 
 #: cinelerra//file.C:1608
 msgid "UNKNOWN"
-msgstr ""
+msgstr "Неизвестно"
 
 #: cinelerra//filedv.C:191
 #, c-format
@@ -2616,15 +2649,19 @@ msgid ""
 "Raw DV format does not support following resolution: %ix%i framerate: %f\n"
 "Allowed resolutions are 720x576 25fps (PAL) and 720x480 29.97fps (NTSC)\n"
 msgstr ""
+"Формат Raw DV не поддерживает конфигурацию: %ix%i частота кадров: %f\n"
+"Поддерживаются: 720x576 25 кад./сек. (PAL) и 720x480 29.97 кад./сек. (NTSC)\n"
 
 #: cinelerra//filedv.C:194
 msgid "Suggestion: Proper frame rate for NTSC DV is 29.97 fps, not 30 fps\n"
-msgstr ""
+msgstr "Предложение: надлежащая частота кадров для NTSC DV\n"
+" 29.97 кад./сек., а не 30 кад./сек.\n"
 
 #: cinelerra//filedv.C:201
 #, c-format
 msgid "Raw DV format does not support following audio configuration : %i channels at sample rate: %iHz\n"
-msgstr ""
+msgstr "Формат Raw DV не поддерживает эту конфигурацию аудио:\n"
+"%i каналов, частота дискретизации: %iHz\n"
 
 #: cinelerra//filedv.C:396
 #, c-format
@@ -2781,8 +2818,8 @@ msgstr ""
 
 #: cinelerra//fileffmpeg.C:920 cinelerra//fileffmpeg.C:1319
 #: cinelerra//pluginfclient.C:208 cinelerra//pluginfclient.C:471
-#: cinelerra//pluginfclient.C:497 cinelerra//preferencesthread.C:593
-#: cinelerra//preferencesthread.C:595 cinelerra//setformat.C:891
+#: cinelerra//pluginfclient.C:497 cinelerra//preferencesthread.C:594
+#: cinelerra//preferencesthread.C:596 cinelerra//setformat.C:891
 msgid "Apply"
 msgstr "Применить"
 
@@ -3134,12 +3171,12 @@ msgstr ""
 #: cinelerra//filempeg.C:598
 #, c-format
 msgid "Unsupported aspect ratio %f\n"
-msgstr ""
+msgstr "Неподдерживаемое соотношение сторон %f\n"
 
 #: cinelerra//filempeg.C:623
 #, c-format
 msgid "Unsupported frame rate %f\n"
-msgstr ""
+msgstr "Неподдерживаемая частота кадров %f\n"
 
 #: cinelerra//filempeg.C:670 cinelerra//filempeg.C:716
 #: cinelerra//filempeg.C:734
@@ -3212,7 +3249,7 @@ msgstr "II"
 msgid "III"
 msgstr "III"
 
-#: cinelerra//filempeg.C:1956 cinelerra//new.C:387 cinelerra//setformat.C:457
+#: cinelerra//filempeg.C:1956 cinelerra//new.C:386 cinelerra//setformat.C:457
 msgid "Color model:"
 msgstr "Цвет. модель:"
 
@@ -3584,7 +3621,7 @@ msgstr "RGBA uncompressed"
 
 #: cinelerra//filetiff.C:607
 msgid "Colorspace:"
-msgstr ""
+msgstr "Цвет. пространство:"
 
 #: cinelerra//filevorbis.C:140
 #, c-format
@@ -3597,7 +3634,7 @@ msgstr ""
 
 #: cinelerra//floatauto.C:422
 msgid "Smooth"
-msgstr ""
+msgstr "Сглаженная"
 
 #: cinelerra//floatauto.C:423 plugins/gradient/gradient.C:347
 #: plugins/gradient/gradient.C:437
@@ -3608,11 +3645,11 @@ msgstr "Линейная"
 
 #: cinelerra//floatauto.C:424
 msgid "Tangent"
-msgstr ""
+msgstr "Связанные направляющие"
 
 #: cinelerra//floatauto.C:425
 msgid "Disjoint"
-msgstr ""
+msgstr "Несвязанные направляющие"
 
 #: cinelerra//floatauto.C:427
 msgid "Error"
@@ -3709,7 +3746,7 @@ msgstr ""
 msgid "Video is not supported in this format."
 msgstr ""
 
-#: cinelerra//gwindowgui.C:40
+#: cinelerra//gwindowgui.C:41
 msgid ": Overlays"
 msgstr ": Вид"
 
@@ -3762,199 +3799,224 @@ msgstr "Правка со скольжением"
 msgid "No effect"
 msgstr "Не использовать"
 
-#: cinelerra//interfaceprefs.C:89
+#: cinelerra//interfaceprefs.C:88
 msgid "Time Format"
 msgstr "Формат времени"
 
+#: cinelerra//interfaceprefs.C:91
+msgid "Flags"
+msgstr "Флаги"
+
 #: cinelerra//interfaceprefs.C:123
 msgid "Frames per foot:"
 msgstr "Кадров на фут"
 
-#: cinelerra//interfaceprefs.C:145
+#: cinelerra//interfaceprefs.C:150
 msgid "Index files"
 msgstr "Индексные файлы"
 
-#: cinelerra//interfaceprefs.C:150
+#: cinelerra//interfaceprefs.C:155
 msgid "Index files go here:"
 msgstr "Расположение индекс. файлов:"
 
-#: cinelerra//interfaceprefs.C:158
+#: cinelerra//interfaceprefs.C:163
 msgid "Index Path"
 msgstr "Путь к индексным файлам"
 
-#: cinelerra//interfaceprefs.C:159
+#: cinelerra//interfaceprefs.C:164
 msgid "Select the directory for index files"
 msgstr "Выберите каталог для индексных файлов"
 
-#: cinelerra//interfaceprefs.C:164
+#: cinelerra//interfaceprefs.C:169
 msgid "Size of index file:"
 msgstr "Размер индексного файла:"
 
-#: cinelerra//interfaceprefs.C:171
+#: cinelerra//interfaceprefs.C:176
 msgid "Number of index files to keep:"
 msgstr "Сохранять индексных файлов:"
 
-#: cinelerra//interfaceprefs.C:184
+#: cinelerra//interfaceprefs.C:189
 msgid "Editing"
 msgstr "Редактирование"
 
-#: cinelerra//interfaceprefs.C:188
+#: cinelerra//interfaceprefs.C:193
 msgid "Keyframe reticle:"
 msgstr "Визирные линии\n"
 "  ключев. кадров:"
 
-#: cinelerra//interfaceprefs.C:204
+#: cinelerra//interfaceprefs.C:209
 msgid "PIN:"
 msgstr "PIN"
 
-#: cinelerra//interfaceprefs.C:227
+#: cinelerra//interfaceprefs.C:232
 msgid "Clicking on edit boundaries does what:"
 msgstr "Поведение кнопок мыши на границах редактиров-я:"
 
-#: cinelerra//interfaceprefs.C:229
+#: cinelerra//interfaceprefs.C:234
 msgid "Button 1:"
 msgstr "Левая:"
 
-#: cinelerra//interfaceprefs.C:238
+#: cinelerra//interfaceprefs.C:243
 msgid "Button 2:"
 msgstr "Средняя:"
 
-#: cinelerra//interfaceprefs.C:246
+#: cinelerra//interfaceprefs.C:251
 msgid "Button 3:"
 msgstr "Правая:"
 
-#: cinelerra//interfaceprefs.C:256
+#: cinelerra//interfaceprefs.C:261
 msgid "Min DB for meter:"
 msgstr "Мин. шкалы дБ:"
 
-#: cinelerra//interfaceprefs.C:262
+#: cinelerra//interfaceprefs.C:267
 msgid "Max DB:"
 msgstr "Макс. дБ:"
 
-#: cinelerra//interfaceprefs.C:270
+#: cinelerra//interfaceprefs.C:275
 msgid "Theme:"
 msgstr "Тема:"
 
-#: cinelerra//interfaceprefs.C:656
+#: cinelerra//interfaceprefs.C:661
 msgid "Use thumbnails in resource window"
 msgstr "Показывать миниатюры в окне 'Ресурсы'"
 
-#: cinelerra//interfaceprefs.C:673
+#: cinelerra//interfaceprefs.C:678
 msgid "Show tip of the day"
 msgstr "Показывать совет дня"
 
-#: cinelerra//interfaceprefs.C:688
+#: cinelerra//interfaceprefs.C:691
 msgid "ffmpeg probe warns rebuild indexes"
 msgstr ""
 
 #: cinelerra//interfaceprefs.C:704
+msgid "EDL version warns if mismatched"
+msgstr ""
+
+#: cinelerra//interfaceprefs.C:717
+msgid "Popups activate on button up"
+msgstr ""
+
+#: cinelerra//interfaceprefs.C:733
 msgid "Scan for commercials during toc build"
 msgstr ""
 
-#: cinelerra//interfaceprefs.C:718
+#: cinelerra//interfaceprefs.C:747
 msgid "Android Remote Control"
-msgstr ""
+msgstr "Удалённое управление с Android"
 
-#: cinelerra//interfaceprefs.C:769
+#: cinelerra//interfaceprefs.C:798
 msgid "Shell Commands"
 msgstr "Shell - команды"
 
-#: cinelerra//interfaceprefs.C:773
+#: cinelerra//interfaceprefs.C:802
 msgid "Main Menu Shell Commands"
 msgstr "Главное меню shell - команд"
 
-#: cinelerra//interfaceprefs.C:783
+#: cinelerra//interfaceprefs.C:812
 msgid "Import images with a duration of"
 msgstr "Длительность импортир-нных изображ-й"
 
-#: cinelerra//interfaceprefs.C:838
+#: cinelerra//interfaceprefs.C:867
 msgid "Never"
 msgstr "Не показывать"
 
-#: cinelerra//interfaceprefs.C:839
+#: cinelerra//interfaceprefs.C:868
 msgid "Dragging"
 msgstr "При перетаскивании кл. к."
 
-#: cinelerra//interfaceprefs.C:840
+#: cinelerra//interfaceprefs.C:869
 msgid "Always"
 msgstr "Всегда показывать"
 
 #: cinelerra//keyframegui.C:50
 msgid "Parameter"
-msgstr ""
+msgstr "Параметр"
 
 #: cinelerra//keyframegui.C:110
 msgid "TEXT"
-msgstr ""
+msgstr "Текст"
 
 #: cinelerra//keyframegui.C:135
 #, c-format
 msgid ": %s Keyframe"
-msgstr ""
+msgstr " %s Ключ. кадр"
 
 #: cinelerra//keyframegui.C:261
 msgid "edit keyframe"
-msgstr ""
+msgstr "редактир-ь ключ. кадр"
 
 #: cinelerra//keyframegui.C:301
 msgid "Keyframe parameters:"
-msgstr ""
+msgstr "Параметры ключ. кадра:"
 
 #: cinelerra//keyframegui.C:307
 msgid "Edit value:"
-msgstr ""
+msgstr "Редактировать значение"
 
 #: cinelerra//keyframegui.C:389
 msgid "Apply to all selected keyframes"
-msgstr ""
+msgstr "Применить ко всем выделенным кл. к."
 
-#: cinelerra//keyframepopup.C:169
+#: cinelerra//keyframepopup.C:100
+msgid "Show Plugin Settings"
+msgstr "Показать настройки эффекта (кл. к.)"
+
+#: cinelerra//keyframepopup.C:177
 msgid "Delete keyframe"
 msgstr "Удалить ключевой кадр"
 
-#: cinelerra//keyframepopup.C:181 cinelerra//keyframepopup.C:183
+#: cinelerra//keyframepopup.C:189 cinelerra//keyframepopup.C:191
 msgid "delete keyframe"
 msgstr "удалить ключевой кадр"
 
-#: cinelerra//keyframepopup.C:196
+#: cinelerra//keyframepopup.C:204 cinelerra//keyframepopup.C:548
+msgid "Hide keyframe type"
+msgstr ""
+
+#: cinelerra//keyframepopup.C:222
 msgid "Show keyframe settings"
 msgstr "Показать параметры ключ. кадра"
 
-#: cinelerra//keyframepopup.C:314
+#: cinelerra//keyframepopup.C:353
 msgid "Copy keyframe"
 msgstr "Копировать ключевой кадр"
 
-#: cinelerra//keyframepopup.C:437
+#: cinelerra//keyframepopup.C:471
 msgid "smooth curve"
 msgstr "Сглаженная кривая"
 
-#: cinelerra//keyframepopup.C:438
+#: cinelerra//keyframepopup.C:472
 msgid "linear segments"
 msgstr "Линейные сегменты"
 
-#: cinelerra//keyframepopup.C:439
+#: cinelerra//keyframepopup.C:473
 msgid "tangent edit"
 msgstr "Связанные направляющие"
 
-#: cinelerra//keyframepopup.C:440
+#: cinelerra//keyframepopup.C:474
 msgid "disjoint edit"
 msgstr "Несвязанные направляющие"
 
-#: cinelerra//keyframepopup.C:442
+#: cinelerra//keyframepopup.C:476
 msgid "misconfigured"
 msgstr ""
 
-#: cinelerra//keyframepopup.C:457 cinelerra//keyframepopup.C:463
+#: cinelerra//keyframepopup.C:491 cinelerra//keyframepopup.C:497
 msgid "change keyframe curve mode"
 msgstr ""
 
-#: cinelerra//keyframepopup.C:477
+#: cinelerra//keyframepopup.C:511
 msgid "Edit Params..."
-msgstr ""
+msgstr "Редактировать параметры..."
 
-#: cinelerra//keyframepopup.C:514
-msgid "Hide keyframe type"
-msgstr "Скрыть тип ключевой кадр"
+#: cinelerra//keyframepopup.C:600 cinelerra//keyframepopup.C:603
+#: cinelerra//mwindowedit.C:1182
+msgid "mute"
+msgstr "заглушить участок"
+
+#: cinelerra//keyframepopup.C:663 cinelerra//keyframepopup.C:666
+msgid "speed"
+msgstr "скорость"
 
 #: cinelerra//labeledit.C:79
 msgid ": Label Info"
@@ -3982,7 +4044,7 @@ msgstr "Открыть файлы ..."
 
 #: cinelerra//loadfile.C:174
 msgid ": Load"
-msgstr ""
+msgstr ": Загрузка"
 
 #: cinelerra//loadfile.C:175
 msgid "Select files to load:"
@@ -4026,7 +4088,7 @@ msgstr "Только создать новые ресурсы"
 
 #: cinelerra//loadmode.C:39
 msgid "Nest sequence"
-msgstr ""
+msgstr "Вложенная последовательность"
 
 #: cinelerra//loadmode.C:82 cinelerra//loadmode.C:102
 msgid "Insertion strategy:"
@@ -4040,7 +4102,7 @@ msgstr "Программа"
 #: cinelerra//main.C:148
 #, c-format
 msgid ": Could not set locale.\n"
-msgstr ""
+msgstr ": Could not set locale.\n"
 
 #: cinelerra//main.C:191
 #, c-format
@@ -4058,7 +4120,7 @@ msgid ""
 "\n"
 "Usage:\n"
 msgstr "\n"
-":\n"
+"Использование:\n"
 
 #: cinelerra//main.C:278
 #, c-format
@@ -4087,12 +4149,12 @@ msgstr "-n = Значение для количества заданий при
 #: cinelerra//main.C:282
 #, c-format
 msgid "-c = Configuration file to use instead of %s/%s.\n"
-msgstr ""
+msgstr "-c = Запуск с другим конфигурационным файлом вместо %s/%s.\n"
 
 #: cinelerra//main.C:284
 #, c-format
 msgid "-r = batch render the contents of the batch file (%s/%s) with no GUI.  batch file is optional.\n"
-msgstr ""
+msgstr "-r = пакетный рендеринг содержимого из пакетного файла (%s/%s) (без GUI). Опция `пакетный файл`- дополнительная.\n"
 
 #: cinelerra//main.C:286
 #, c-format
@@ -4117,7 +4179,7 @@ msgid "Building Indexes..."
 msgstr "Создание индексов..."
 
 #: cinelerra//mainmenu.C:136 cinelerra//shbtnprefs.C:152
-#: plugins/svg/svgwin.C:244
+#: plugins/svg/svgwin.C:258
 msgid "Edit"
 msgstr "Правка"
 
@@ -4125,163 +4187,163 @@ msgstr "Правка"
 msgid "Keyframes"
 msgstr "Ключевые кадры"
 
-#: cinelerra//mainmenu.C:179 cinelerra//new.C:278 cinelerra//setformat.C:336
+#: cinelerra//mainmenu.C:178 cinelerra//new.C:277 cinelerra//setformat.C:336
 msgid "Audio"
 msgstr "Аудио"
 
-#: cinelerra//mainmenu.C:188 cinelerra//new.C:306 cinelerra//setformat.C:388
+#: cinelerra//mainmenu.C:187 cinelerra//new.C:305 cinelerra//setformat.C:388
 msgid "Video"
 msgstr "Видео"
 
-#: cinelerra//mainmenu.C:195
+#: cinelerra//mainmenu.C:194
 msgid "Tracks"
 msgstr "Дорожки"
 
-#: cinelerra//mainmenu.C:203
+#: cinelerra//mainmenu.C:202
 msgid "Settings"
 msgstr "Установки"
 
-#: cinelerra//mainmenu.C:232
+#: cinelerra//mainmenu.C:231
 msgid "Fade"
-msgstr "Фейд А./В."
+msgstr "Фейд"
 
-#: cinelerra//mainmenu.C:234 cinelerra//vpatchgui.C:272
+#: cinelerra//mainmenu.C:233 cinelerra//vpatchgui.C:285
 msgid "Overlay mode"
 msgstr "Режим наложения"
 
-#: cinelerra//mainmenu.C:237 plugins/denoiseseltempavg/seltempavgwindow.C:66
+#: cinelerra//mainmenu.C:236 plugins/denoiseseltempavg/seltempavgwindow.C:66
 msgid "Mask"
 msgstr "Маска"
 
-#: cinelerra//mainmenu.C:238
+#: cinelerra//mainmenu.C:237
 msgid "Speed"
 msgstr "Скорость"
 
-#: cinelerra//mainmenu.C:239
+#: cinelerra//mainmenu.C:238
 msgid "Camera X"
 msgstr "Камера X"
 
-#: cinelerra//mainmenu.C:240
+#: cinelerra//mainmenu.C:239
 msgid "Camera Y"
 msgstr "Камера Y"
 
-#: cinelerra//mainmenu.C:241
+#: cinelerra//mainmenu.C:240
 msgid "Camera Z"
 msgstr "Камера Z"
 
-#: cinelerra//mainmenu.C:242
+#: cinelerra//mainmenu.C:241
 msgid "Projector X"
 msgstr "Проектор X"
 
-#: cinelerra//mainmenu.C:243
+#: cinelerra//mainmenu.C:242
 msgid "Projector Y"
 msgstr "Проектор Y"
 
-#: cinelerra//mainmenu.C:244
+#: cinelerra//mainmenu.C:243
 msgid "Projector Z"
 msgstr "Проектор Z"
 
-#: cinelerra//mainmenu.C:247
+#: cinelerra//mainmenu.C:246
 msgid "Window"
 msgstr "Окно"
 
-#: cinelerra//mainmenu.C:256
+#: cinelerra//mainmenu.C:255
 msgid "Default positions"
 msgstr "Стандартное расположение"
 
-#: cinelerra//mainmenu.C:256
+#: cinelerra//mainmenu.C:255
 msgid "Ctrl-P"
 msgstr "Ctrl-P"
 
-#: cinelerra//mainmenu.C:257
+#: cinelerra//mainmenu.C:256
 msgid "Tile left"
-msgstr ""
+msgstr "Окна на левый монитор"
 
-#: cinelerra//mainmenu.C:258
+#: cinelerra//mainmenu.C:257
 msgid "Tile right"
-msgstr ""
+msgstr "Окна на правый монитор"
 
-#: cinelerra//mainmenu.C:564
+#: cinelerra//mainmenu.C:563
 msgid "Dump CICache"
 msgstr "Выгрузка CICache"
 
-#: cinelerra//mainmenu.C:574
+#: cinelerra//mainmenu.C:573
 msgid "Dump EDL"
 msgstr "Выгрузка EDL"
 
-#: cinelerra//mainmenu.C:588
+#: cinelerra//mainmenu.C:587
 msgid "Dump Plugins"
 msgstr "Выгрузка списка плагинов"
 
-#: cinelerra//mainmenu.C:603
+#: cinelerra//mainmenu.C:602
 msgid "Dump Assets"
 msgstr "Выгрузка ресурсов"
 
-#: cinelerra//mainmenu.C:614
+#: cinelerra//mainmenu.C:613
 msgid "Undo"
 msgstr "Отмена"
 
-#: cinelerra//mainmenu.C:626
+#: cinelerra//mainmenu.C:625
 #, c-format
 msgid "Undo %s"
 msgstr "Отмена %s"
 
-#: cinelerra//mainmenu.C:632
+#: cinelerra//mainmenu.C:631
 msgid "Redo"
 msgstr "Повтор"
 
-#: cinelerra//mainmenu.C:632
+#: cinelerra//mainmenu.C:631
 msgid "Shift-Z"
 msgstr "Shift-Z"
 
-#: cinelerra//mainmenu.C:647
+#: cinelerra//mainmenu.C:646
 #, c-format
 msgid "Redo %s"
 msgstr "Повтор %s"
 
-#: cinelerra//mainmenu.C:653
+#: cinelerra//mainmenu.C:652
 msgid "Cut keyframes"
 msgstr "Вырезать ключевые кадры"
 
-#: cinelerra//mainmenu.C:653
+#: cinelerra//mainmenu.C:652
 msgid "Shift-X"
 msgstr "Shift-X"
 
-#: cinelerra//mainmenu.C:666
+#: cinelerra//mainmenu.C:665
 msgid "Copy keyframes"
 msgstr "Копировать ключевые кадры"
 
-#: cinelerra//mainmenu.C:666
+#: cinelerra//mainmenu.C:665
 msgid "Shift-C"
 msgstr "Shift-C"
 
-#: cinelerra//mainmenu.C:679
+#: cinelerra//mainmenu.C:678
 msgid "Paste keyframes"
 msgstr "Вставить ключевые кадры"
 
-#: cinelerra//mainmenu.C:679
+#: cinelerra//mainmenu.C:678
 msgid "Shift-V"
 msgstr "Shift-V"
 
-#: cinelerra//mainmenu.C:692
+#: cinelerra//mainmenu.C:691
 msgid "Clear keyframes"
-msgstr "Ð\9eÑ\87иÑ\81Ñ\82ить ключевые кадры"
+msgstr "Удалить ключевые кадры"
 
-#: cinelerra//mainmenu.C:692
+#: cinelerra//mainmenu.C:691
 msgid "Shift-Del"
 msgstr "Shift-Del"
 
-#: cinelerra//mainmenu.C:707
+#: cinelerra//mainmenu.C:706
 msgid "Change to linear"
-msgstr ""
+msgstr "Преобразовать сегменты в линейные"
 
-#: cinelerra//mainmenu.C:722
+#: cinelerra//mainmenu.C:721
 msgid "Change to smooth"
-msgstr ""
+msgstr "Преобразовать сегменты в сглаженные"
 
-#: cinelerra//mainmenu.C:736
+#: cinelerra//mainmenu.C:735
 msgid "Create curve type..."
-msgstr ""
+msgstr "Задать тип кривой..."
 
 #: cinelerra//mainmenu.C:794
 msgid "Cut default keyframe"
@@ -4309,7 +4371,7 @@ msgstr "Alt-v"
 
 #: cinelerra//mainmenu.C:833
 msgid "Clear default keyframe"
-msgstr "Ð\9eÑ\87иÑ\81Ñ\82ить станд. ключевой кадр"
+msgstr "Удалить станд. ключевой кадр"
 
 #: cinelerra//mainmenu.C:833
 msgid "Alt-Del"
@@ -4347,7 +4409,7 @@ msgstr "Выделить всё"
 
 #: cinelerra//mainmenu.C:920
 msgid "Clear labels"
-msgstr "Ð\9eÑ\87иÑ\81Ñ\82ить метки"
+msgstr "Удалить метки"
 
 #: cinelerra//mainmenu.C:931
 msgid "Cut ads"
@@ -4493,23 +4555,27 @@ msgstr "Окно 'Cоставитель (Вывод)'"
 msgid "Show Overlays"
 msgstr "Окно меню 'Вид'"
 
-#: cinelerra//mainmenu.C:1433
+#: cinelerra//mainmenu.C:1420
+msgid "Ctrl-0"
+msgstr "Ctrl-0"
+
+#: cinelerra//mainmenu.C:1438
 msgid "Show Levels"
 msgstr "Окно 'Уровни звука'"
 
-#: cinelerra//mainmenu.C:1464
+#: cinelerra//mainmenu.C:1469
 msgid "Split X pane"
-msgstr ""
+msgstr "Разделить монтаж. стол по X"
 
-#: cinelerra//mainmenu.C:1464
+#: cinelerra//mainmenu.C:1469
 msgid "Ctrl-1"
 msgstr "Ctrl-1"
 
-#: cinelerra//mainmenu.C:1477
+#: cinelerra//mainmenu.C:1482
 msgid "Split Y pane"
-msgstr ""
+msgstr "Разделить монтаж. стол по Y"
 
-#: cinelerra//mainmenu.C:1477
+#: cinelerra//mainmenu.C:1482
 msgid "Ctrl-2"
 msgstr "Ctrl-2"
 
@@ -4553,19 +4619,19 @@ msgstr "Выберите переход из списка"
 
 #: cinelerra//menueditlength.C:31
 msgid "Edit Length..."
-msgstr ""
+msgstr "Длина объекта редактирования..."
 
 #: cinelerra//menueditlength.C:52
 msgid "Shuffle Edits"
-msgstr ""
+msgstr "Перемешать объекты"
 
 #: cinelerra//menueditlength.C:67
 msgid "Reverse Edits"
-msgstr ""
+msgstr "Расположить в обратном порядке"
 
 #: cinelerra//menueditlength.C:85
 msgid "Align Edits"
-msgstr ""
+msgstr "Выровнять расположение объектов"
 
 #: cinelerra//menueffects.C:58
 msgid "Render effect..."
@@ -4595,7 +4661,7 @@ msgstr "Не выбран эффект."
 msgid "No selected range to process."
 msgstr "Не выбрана область для обработки."
 
-#: cinelerra//menueffects.C:324 cinelerra//mwindowgui.C:611
+#: cinelerra//menueffects.C:324 cinelerra//mwindowgui.C:608
 #: cinelerra//vwindowgui.C:101
 #, c-format
 msgid ": %s"
@@ -4654,74 +4720,74 @@ msgstr "Messages::write_message"
 msgid "Show meters"
 msgstr "Показывать уровни звука"
 
-#: cinelerra//mwindow.C:582
+#: cinelerra//mwindow.C:589
 #, c-format
 msgid "MWindow::init_plugins: can't create plugin index: %s\n"
 msgstr "MWindow::init_plugins: can't create plugin index: %s\n"
 
-#: cinelerra//mwindow.C:643
+#: cinelerra//mwindow.C:650
 #, c-format
 msgid "MWindow::init_ladspa_index: can't create plugin index: %s\n"
 msgstr "MWindow::init_ladspa_index: can't create plugin index: %s\n"
 
-#: cinelerra//mwindow.C:922
+#: cinelerra//mwindow.C:930
 #, c-format
 msgid "MWindow::init_theme: prefered theme %s not found.\n"
 msgstr "MWindow::init_theme: prefered theme %s not found.\n"
 
-#: cinelerra//mwindow.C:926
+#: cinelerra//mwindow.C:934
 #, c-format
 msgid "MWindow::init_theme: trying default theme %s\n"
 msgstr "MWindow::init_theme: trying default theme %s\n"
 
-#: cinelerra//mwindow.C:936
+#: cinelerra//mwindow.C:944
 #, c-format
 msgid "MWindow::init_theme: theme_plugin not found.\n"
 msgstr "MWindow::init_theme: theme_plugin not found.\n"
 
-#: cinelerra//mwindow.C:942
+#: cinelerra//mwindow.C:950
 #, c-format
 msgid "MWindow::init_theme: unable to load theme %s\n"
 msgstr "MWindow::init_theme: unable to load theme %s\n"
 
-#: cinelerra//mwindow.C:1225
+#: cinelerra//mwindow.C:1233
 msgid "multiple video tracks"
 msgstr ""
 
-#: cinelerra//mwindow.C:1237
+#: cinelerra//mwindow.C:1245
 msgid "crosses edits"
 msgstr ""
 
-#: cinelerra//mwindow.C:1239
+#: cinelerra//mwindow.C:1247
 msgid "not asset"
 msgstr ""
 
-#: cinelerra//mwindow.C:1258
+#: cinelerra//mwindow.C:1266
 msgid "no file"
 msgstr ""
 
-#: cinelerra//mwindow.C:1264
+#: cinelerra//mwindow.C:1272
 msgid "db failed"
 msgstr ""
 
-#: cinelerra//mwindow.C:1268
+#: cinelerra//mwindow.C:1276
 #, c-format
 msgid "put_commercial: %s"
 msgstr ""
 
-#: cinelerra//mwindow.C:1333
+#: cinelerra//mwindow.C:1341
 #, c-format
 msgid "Loading %s"
 msgstr ""
 
-#: cinelerra//mwindow.C:1351
+#: cinelerra//mwindow.C:1359
 #, c-format
 msgid ""
 "%s's resolution is %dx%d.\n"
 "Images with odd dimensions may not decode properly."
 msgstr ""
 
-#: cinelerra//mwindow.C:1362
+#: cinelerra//mwindow.C:1370
 #, c-format
 msgid ""
 "%s's index was built for program number %d\n"
@@ -4729,27 +4795,46 @@ msgid ""
 "  Using program %d."
 msgstr ""
 
-#: cinelerra//mwindow.C:1408
+#: cinelerra//mwindow.C:1416
 #, c-format
 msgid "Failed to open %s"
 msgstr "Ошибка открытия %s"
 
-#: cinelerra//mwindow.C:1441
+#: cinelerra//mwindow.C:1449
 msgid "'s format couldn't be determined."
 msgstr " - не удалось определить формат."
 
-#: cinelerra//mwindow.C:1692
+#: cinelerra//mwindow.C:1519
+#, c-format
+msgid ""
+"XML file %s\n"
+" not from cinelerra."
+msgstr ""
+
+#: cinelerra//mwindow.C:1521
+#, c-format
+msgid "Unknown %s"
+msgstr "Неизвестно %s"
+
+#: cinelerra//mwindow.C:1529
+#, c-format
+msgid ""
+"Warning: XML from cinelerra version %s\n"
+"Session data may be incompatible."
+msgstr ""
+
+#: cinelerra//mwindow.C:1722
 msgid "load"
 msgstr "загрузка"
 
-#: cinelerra//mwindow.C:1769 cinelerra//mwindow.C:1802
+#: cinelerra//mwindow.C:1799 cinelerra//mwindow.C:1832
 #, c-format
 msgid ""
 "The %s '%s' in file '%s' is not part of your installation of Cinelerra.\n"
 "The project won't be rendered as it was meant and Cinelerra might crash.\n"
 msgstr ""
 
-#: cinelerra//mwindow.C:1835
+#: cinelerra//mwindow.C:1865
 #, c-format
 msgid ""
 "MWindow::init_shm: /proc/sys/kernel/shmmax is %p.\n"
@@ -4757,45 +4842,49 @@ msgid ""
 "as root, run: echo 0x7fffffff > /proc/sys/kernel/shmmax\n"
 "before trying to start cinelerra.\n"
 "It should be at least 0x7fffffff for Cinelerra.\n"
-msgstr ""
+msgstr "MWindow::init_shm: /proc/sys/kernel/shmmax is %p.\n"
+"Выполните с правами суперпользователя:\n"
+"echo 0x7fffffff > /proc/sys/kernel/shmmax\n"
+"прежде чем запустить Сinelerra.\n"
+"Для Cinelerra значение должно быть не менее 0x7fffffff\n"
 
-#: cinelerra//mwindow.C:1865
+#: cinelerra//mwindow.C:1895
 msgid "Initializing Plugins"
-msgstr ""
+msgstr "Инициализация плагинов"
 
-#: cinelerra//mwindow.C:1871
+#: cinelerra//mwindow.C:1901
 msgid "Initializing GUI"
 msgstr "Инициализация GUI"
 
-#: cinelerra//mwindow.C:1879
+#: cinelerra//mwindow.C:1909
 msgid "Initializing Fonts"
-msgstr ""
+msgstr "Инициализация шрифтов"
 
-#: cinelerra//mwindow.C:2893
+#: cinelerra//mwindow.C:2947
 #, c-format
 msgid "Couldn't open %s for writing."
 msgstr "Невозможно открыть %s для записи."
 
-#: cinelerra//mwindow.C:3054
+#: cinelerra//mwindow.C:3108
 msgid "remove assets"
 msgstr "удалить ресурсы"
 
-#: cinelerra//mwindow.C:3276
+#: cinelerra//mwindow.C:3340
 #, c-format
 msgid "Using %s"
-msgstr ""
+msgstr "Использование %s"
 
-#: cinelerra//mwindow.C:3413 cinelerra//mwindowedit.C:234
-#: cinelerra//mwindowedit.C:300 cinelerra//preferencesthread.C:232
+#: cinelerra//mwindow.C:3477 cinelerra//mwindowedit.C:234
+#: cinelerra//mwindowedit.C:300 cinelerra//preferencesthread.C:233
 msgid ""
 "This project's dimensions are not multiples of 4 so\n"
 "it can't be rendered by OpenGL."
 msgstr "Размер проекта не кратен 4.\n"
 "Невозможно выполнить OpenGL-рендеринг."
 
-#: cinelerra//mwindow.C:3543
+#: cinelerra//mwindow.C:3610
 msgid "select asset"
-msgstr ""
+msgstr "выберите ресурс"
 
 #: cinelerra//mwindowedit.C:92 cinelerra//mwindowedit.C:120
 #: cinelerra//mwindowedit.C:141
@@ -4804,7 +4893,7 @@ msgstr "'добавить дорожку'"
 
 #: cinelerra//mwindowedit.C:259
 msgid "asset to all"
-msgstr ""
+msgstr "`соглас. и размер, и частоту`"
 
 #: cinelerra//mwindowedit.C:316
 msgid "asset to size"
@@ -4816,19 +4905,19 @@ msgstr "соглас. част. кадров"
 
 #: cinelerra//mwindowedit.C:359
 msgid "clear"
-msgstr "очистить"
+msgstr "удалить"
 
 #: cinelerra//mwindowedit.C:411
 msgid "clear keyframes"
-msgstr "очистить ключевые кадры"
+msgstr "удалить ключевые кадры"
 
 #: cinelerra//mwindowedit.C:426
 msgid "clear default keyframe"
-msgstr "очистить стд. ключевой кадр"
+msgstr "удалить стд. ключевой кадр"
 
 #: cinelerra//mwindowedit.C:442
 msgid "clear labels"
-msgstr "очистить метки"
+msgstr "удалить метки"
 
 #: cinelerra//mwindowedit.C:461
 msgid "concatenate tracks"
@@ -4872,11 +4961,11 @@ msgstr "по размеру вывода"
 
 #: cinelerra//mwindowedit.C:1026
 msgid "move edit"
-msgstr "пеÑ\80емеÑ\81Ñ\82иÑ\82Ñ\8c Ñ\80еÑ\81Ñ\83Ñ\80Ñ\81"
+msgstr "пеÑ\80емеÑ\81Ñ\82иÑ\82Ñ\8c Ñ\84Ñ\80агменÑ\82"
 
 #: cinelerra//mwindowedit.C:1049
 msgid "paste effect"
-msgstr ""
+msgstr "вставить эффект"
 
 #: cinelerra//mwindowedit.C:1065
 msgid "move effect"
@@ -4906,10 +4995,6 @@ msgstr "переместить дорожку вверх"
 msgid "move tracks up"
 msgstr "переместить дорожки вверх"
 
-#: cinelerra//mwindowedit.C:1182
-msgid "mute"
-msgstr "заглушить участок"
-
 #: cinelerra//mwindowedit.C:1244
 msgid "overwrite"
 msgstr "заменить"
@@ -4940,7 +5025,7 @@ msgstr "удалить переход"
 
 #: cinelerra//mwindowedit.C:1947
 msgid "detach transitions"
-msgstr ""
+msgstr "удалить переходы"
 
 #: cinelerra//mwindowedit.C:1967 cinelerra//mwindowedit.C:1996
 #: cinelerra//mwindowedit.C:2017 cinelerra//mwindowedit.C:2039
@@ -4958,23 +5043,23 @@ msgstr "Переход по-умолчанию (станд.) %s не найде
 
 #: cinelerra//mwindowedit.C:2057
 msgid "shuffle edits"
-msgstr ""
+msgstr "перемешать объекты"
 
 #: cinelerra//mwindowedit.C:2076
 msgid "reverse edits"
-msgstr ""
+msgstr "объекты в обрат. порядке"
 
 #: cinelerra//mwindowedit.C:2095
 msgid "align edits"
-msgstr ""
+msgstr "выровн. располож. объектов"
 
 #: cinelerra//mwindowedit.C:2114
 msgid "edit length"
-msgstr ""
+msgstr "длина объекта редактир-я"
 
 #: cinelerra//mwindowedit.C:2134 cinelerra//mwindowedit.C:2153
 msgid "transition length"
-msgstr ""
+msgstr "длина перехода"
 
 #: cinelerra//mwindowedit.C:2242
 msgid "resize track"
@@ -5005,27 +5090,27 @@ msgid ""
 msgstr "%s\n"
 "Создан из главного окна"
 
-#: cinelerra//mwindowedit.C:2449
+#: cinelerra//mwindowedit.C:2451
 msgid "label"
 msgstr "метка"
 
-#: cinelerra//mwindowedit.C:2465
+#: cinelerra//mwindowedit.C:2467
 msgid "trim selection"
 msgstr "обрезать выбранный участок"
 
-#: cinelerra//mwindowedit.C:2561
+#: cinelerra//mwindowedit.C:2563
 msgid "new folder"
-msgstr ""
+msgstr "новая папка"
 
-#: cinelerra//mwindowedit.C:2598
+#: cinelerra//mwindowedit.C:2600
 msgid "map 1:1"
 msgstr "сопоставить 1:1"
 
-#: cinelerra//mwindowedit.C:2598
+#: cinelerra//mwindowedit.C:2600
 msgid "map 5.1:2"
 msgstr "сопоставить 5.1:2"
 
-#: cinelerra//mwindowedit.C:2675
+#: cinelerra//mwindowedit.C:2677
 msgid "cut ads"
 msgstr ""
 
@@ -5033,17 +5118,17 @@ msgstr ""
 msgid ": Program"
 msgstr ": Программа"
 
-#: cinelerra//mwindowgui.C:2402 cinelerra//mwindowgui.C:2413
-#: cinelerra//preferencesthread.C:218
+#: cinelerra//mwindowgui.C:2279 cinelerra//mwindowgui.C:2290
+#: cinelerra//preferencesthread.C:219
 msgid "Try FFMpeg first"
 msgstr ""
 
-#: cinelerra//mwindowgui.C:2402 cinelerra//mwindowgui.C:2413
-#: cinelerra//preferencesthread.C:218
+#: cinelerra//mwindowgui.C:2279 cinelerra//mwindowgui.C:2290
+#: cinelerra//preferencesthread.C:219
 msgid "Try FFMpeg last"
 msgstr ""
 
-#: cinelerra//mwindowgui.C:2415
+#: cinelerra//mwindowgui.C:2292
 msgid "Changing the base codecs may require rebuilding indexes."
 msgstr ""
 
@@ -5125,7 +5210,7 @@ msgstr "Cinelerra: Подтвердить выход"
 
 #: cinelerra//mwindow.inc:71
 msgid "Cinelerra: Could not set locale.\n"
-msgstr ""
+msgstr "Cinelerra: Could not set locale.\n"
 
 #: cinelerra//mwindow.inc:72
 msgid "Cinelerra: Create BD"
@@ -5145,7 +5230,7 @@ msgstr ""
 
 #: cinelerra//mwindow.inc:76
 msgid "Cinelerra: Delete All Indexes"
-msgstr ""
+msgstr "Cinelerra: Удалить все индекс. файлы"
 
 #: cinelerra//mwindow.inc:77
 msgid "Cinelerra: Edit Channel"
@@ -5153,7 +5238,7 @@ msgstr "Cinelerra: Правка канала"
 
 #: cinelerra//mwindow.inc:78
 msgid "Cinelerra: Edit length"
-msgstr ""
+msgstr "Cinelerra: Длина объекта"
 
 #: cinelerra//mwindow.inc:79
 msgid "Cinelerra: Effect Prompt"
@@ -5347,7 +5432,7 @@ msgstr "Cinelerra: Shell"
 #: cinelerra//mwindow.inc:126
 #, c-format
 msgid "Cinelerra: %s Keyframe"
-msgstr ""
+msgstr "Cinelerra: %s Ключ. кадр"
 
 #: cinelerra//mwindow.inc:127
 #, c-format
@@ -5408,103 +5493,103 @@ msgstr "Cinelerra: Просмотр"
 msgid "Cinelerra: Warning"
 msgstr "Cinelerra: Предупреждение"
 
-#: cinelerra//new.C:231
+#: cinelerra//new.C:230
 msgid ": New Project"
 msgstr ": Новый проект"
 
-#: cinelerra//new.C:263
+#: cinelerra//new.C:262
 msgid "Parameters for the new project:"
 msgstr "Параметры для нового проекта:"
 
-#: cinelerra//new.C:282 cinelerra//new.C:309
+#: cinelerra//new.C:281 cinelerra//new.C:308
 msgid "Tracks:"
 msgstr "Дорожки:"
 
-#: cinelerra//new.C:298 cinelerra//recordgui.C:232 cinelerra//setformat.C:342
+#: cinelerra//new.C:297 cinelerra//recordgui.C:232 cinelerra//setformat.C:342
 msgid "Samplerate:"
 msgstr "Част. дискр.:"
 
-#: cinelerra//new.C:324 cinelerra//recordgui.C:245
+#: cinelerra//new.C:323 cinelerra//recordgui.C:245
 msgid "Framerate:"
 msgstr "Част. кадров:"
 
-#: cinelerra//new.C:350 cinelerra//setformat.C:406
+#: cinelerra//new.C:349 cinelerra//setformat.C:406
 msgid "Canvas size:"
 msgstr "Размер холста   (Размер вывода):"
 
-#: cinelerra//new.C:369 cinelerra//scale.C:270 cinelerra//setformat.C:474
+#: cinelerra//new.C:368 cinelerra//scale.C:270 cinelerra//setformat.C:474
 msgid "Aspect ratio:"
 msgstr "Пропорции:"
 
-#: cinelerra//new.C:397 cinelerra//setformat.C:501
+#: cinelerra//new.C:396 cinelerra//setformat.C:501
 msgid "Interlace mode:"
 msgstr "Чересстроч.\n"
 "режим"
 
-#: cinelerra//new.C:910
+#: cinelerra//new.C:909
 msgid "Auto aspect ratio"
 msgstr "Автоматически"
 
-#: cinelerra//new.C:936 cinelerra//resizetrackthread.C:192
+#: cinelerra//new.C:935 cinelerra//resizetrackthread.C:192
 #: cinelerra//setformat.C:924 plugins/photoscale/photoscale.C:198
 msgid "Swap dimensions"
 msgstr "Поменять местами значения"
 
-#: cinelerra//patchgui.C:382
+#: cinelerra//patchgui.C:358
 msgid "Play track"
 msgstr "Разрешить/запретить\n"
 "воспроизведение и вывод в файл"
 
-#: cinelerra//patchgui.C:407
+#: cinelerra//patchgui.C:383
 msgid "play patch"
 msgstr "'разреш./запрет. воспр-ние ...'"
 
-#: cinelerra//patchgui.C:435
+#: cinelerra//patchgui.C:411
 msgid "Arm track"
 msgstr "Разрешить/запретить правку"
 
-#: cinelerra//patchgui.C:460
+#: cinelerra//patchgui.C:436
 msgid "record patch"
 msgstr "'разреш./запрет. правку'"
 
-#: cinelerra//patchgui.C:487
+#: cinelerra//patchgui.C:463
 msgid "Gang faders"
 msgstr "Связанные регуляторы\n"
 "громкости/непрозрачности (fade)"
 
-#: cinelerra//patchgui.C:512
+#: cinelerra//patchgui.C:488
 msgid "gang patch"
 msgstr "'вкл./выкл. связан. регуляторы'"
 
-#: cinelerra//patchgui.C:539
+#: cinelerra//patchgui.C:515
 msgid "Draw media"
 msgstr "Включить/выключить показ миниатюр"
 
-#: cinelerra//patchgui.C:564
+#: cinelerra//patchgui.C:540
 msgid "draw patch"
 msgstr "'вкл./выкл. показ миниатюр'"
 
-#: cinelerra//patchgui.C:590
+#: cinelerra//patchgui.C:566
 msgid "Don't send to output"
 msgstr "Включить/выключить глушение"
 
-#: cinelerra//patchgui.C:630
+#: cinelerra//patchgui.C:606
 msgid "mute patch"
 msgstr "'вкл./выкл. глушение'"
 
-#: cinelerra//patchgui.C:697
+#: cinelerra//patchgui.C:652
 msgid "expand patch"
 msgstr "'развернуть/свернуть'"
 
-#: cinelerra//patchgui.C:721 cinelerra//patchgui.C:725
+#: cinelerra//patchgui.C:676 cinelerra//patchgui.C:680
 msgid "track title"
 msgstr "название дорожки"
 
-#: cinelerra//patchgui.C:750
+#: cinelerra//patchgui.C:705
 msgid "Nudge"
 msgstr "Смещение начала"
 
-#: cinelerra//patchgui.C:761 cinelerra//patchgui.C:767
+#: cinelerra//patchgui.C:716 cinelerra//patchgui.C:722
 msgid "nudge"
 msgstr ""
 
@@ -5518,7 +5603,7 @@ msgstr "Секунд предрендеринга:"
 
 #: cinelerra//performanceprefs.C:112 cinelerra//performanceprefs.C:117
 msgid "(must be root)"
-msgstr ""
+msgstr "должны быть root"
 
 #: cinelerra//performanceprefs.C:134
 msgid "Background Rendering (Video only)"
@@ -5589,11 +5674,11 @@ msgstr "Принудительно использовать один проце
 
 #: cinelerra//performanceprefs.C:525
 msgid "trap sigSEGV"
-msgstr ""
+msgstr "trap sigSEGV"
 
 #: cinelerra//performanceprefs.C:541
 msgid "trap sigINT"
-msgstr ""
+msgstr "trap sigINT"
 
 #: cinelerra//performanceprefs.C:558
 msgid "On file open, ffmpeg probes early"
@@ -5699,7 +5784,7 @@ msgstr "Воспроизведение с приоритетом реально
 
 #: cinelerra//playbackprefs.C:324 cinelerra//recordprefs.C:308
 msgid "Map 5.1->2"
-msgstr ""
+msgstr "Сопоставить 5.1->2"
 
 #: cinelerra//playbackprefs.C:342
 msgid "Interpolate CR2 images"
@@ -5786,7 +5871,7 @@ msgstr "Общие дорожки:"
 
 #: cinelerra//plugindialog.C:761
 msgid "Attach single standlone and share others"
-msgstr ""
+msgstr "Применить как общий на остальные треки."
 
 #: cinelerra//pluginfclient.C:146 cinelerra//pluginfclient.C:465
 #: cinelerra//pluginfclient.C:494 plugins/bluebanana/bluebananawindow.C:1373
@@ -5869,41 +5954,41 @@ msgstr "Параметры программы"
 msgid "Shift-P"
 msgstr "Shift-P"
 
-#: cinelerra//preferencesthread.C:318
+#: cinelerra//preferencesthread.C:319
 msgid "*Playback A"
 msgstr ""
 
-#: cinelerra//preferencesthread.C:318
+#: cinelerra//preferencesthread.C:319
 msgid "Playback A"
 msgstr ""
 
-#: cinelerra//preferencesthread.C:321
+#: cinelerra//preferencesthread.C:322
 msgid "*Playback B"
 msgstr ""
 
-#: cinelerra//preferencesthread.C:321
+#: cinelerra//preferencesthread.C:322
 msgid "Playback B"
 msgstr ""
 
-#: cinelerra//preferencesthread.C:323
+#: cinelerra//preferencesthread.C:324
 msgid "Recording"
 msgstr "Запись"
 
-#: cinelerra//preferencesthread.C:325
+#: cinelerra//preferencesthread.C:326
 msgid "Performance"
 msgstr "Производительность"
 
-#: cinelerra//preferencesthread.C:327
+#: cinelerra//preferencesthread.C:328
 msgid "Interface"
 msgstr "Интерфейс"
 
-#: cinelerra//preferencesthread.C:329
+#: cinelerra//preferencesthread.C:330
 msgid "About"
 msgstr "О программе"
 
-#: cinelerra//preferencesthread.C:362
+#: cinelerra//preferencesthread.C:363
 msgid ": Preferences"
-msgstr ""
+msgstr ": Параметры"
 
 #: cinelerra//question.C:33
 msgid ": Question"
@@ -5927,7 +6012,7 @@ msgstr "Сохранить список редактирования перед
 
 #: cinelerra//recconfirmdelete.C:34
 msgid ": Confirm"
-msgstr ""
+msgstr ": Подтверждение"
 
 #: cinelerra//recconfirmdelete.C:49
 #, c-format
@@ -6000,7 +6085,7 @@ msgstr "Зациклить"
 
 #: cinelerra//recordgui.C:62
 msgid ": Recording"
-msgstr ""
+msgstr ": Запись"
 
 #: cinelerra//recordgui.C:159
 msgid "Start time:"
@@ -6016,7 +6101,7 @@ msgstr "Управление:"
 
 #: cinelerra//recordgui.C:189
 msgid ": Record path"
-msgstr ""
+msgstr ": Запись в файл"
 
 #: cinelerra//recordgui.C:190 cinelerra//recordwindow.C:57
 msgid "Select a file to record to:"
@@ -6156,12 +6241,12 @@ msgstr "Перемотать пакет и переписать ?"
 msgid ": Video in"
 msgstr ""
 
-#: cinelerra//recordmonitor.C:639
+#: cinelerra//recordmonitor.C:645
 #, c-format
 msgid ": Video in %d%%"
 msgstr ""
 
-#: cinelerra//recordmonitor.C:709 cinelerra//vdeviceprefs.C:285
+#: cinelerra//recordmonitor.C:715 cinelerra//vdeviceprefs.C:285
 msgid "Swap fields"
 msgstr "Поменять местами поля"
 
@@ -6219,7 +6304,7 @@ msgstr "Запись с приоритетом реальн. времени (т
 
 #: cinelerra//recordprefs.C:334
 msgid "Realtime TOC"
-msgstr ""
+msgstr "Создавать TOC в режиме реального времени"
 
 #: cinelerra//recordprefs.C:494
 msgid "Presentation Timestamps"
@@ -6522,7 +6607,7 @@ msgstr "Сохранить проект"
 #: cinelerra//savefile.C:113 cinelerra//savefile.C:220
 #, c-format
 msgid "\"%s\" %dC written"
-msgstr ""
+msgstr "\"%s\" %dC записан"
 
 #: cinelerra//savefile.C:133
 msgid "Save as..."
@@ -6625,7 +6710,7 @@ msgstr "%d градусов"
 
 #: cinelerra//shbtnprefs.C:90
 msgid ": Shell"
-msgstr ""
+msgstr " Shell"
 
 #: cinelerra//shbtnprefs.C:112 plugins/overlayaudio/overlayaudio.C:174
 #: plugins/piano/piano.C:820 plugins/synthesizer/synthesizer.C:1356
@@ -6772,31 +6857,31 @@ msgstr "Где расположен %s?"
 
 #: cinelerra//timeentry.C:51
 msgid "Sun"
-msgstr ""
+msgstr "Вскр."
 
 #: cinelerra//timeentry.C:51
 msgid "Mon"
-msgstr ""
+msgstr "Пнд."
 
 #: cinelerra//timeentry.C:51
 msgid "Tue"
-msgstr ""
+msgstr "Втрн."
 
 #: cinelerra//timeentry.C:51
 msgid "Wed"
-msgstr ""
+msgstr "Срд."
 
 #: cinelerra//timeentry.C:51
 msgid "Thu"
-msgstr ""
+msgstr "Чтв."
 
 #: cinelerra//timeentry.C:51
 msgid "Fri"
-msgstr ""
+msgstr "Птн."
 
 #: cinelerra//timeentry.C:51
 msgid "Sat"
-msgstr ""
+msgstr "Суб."
 
 #: cinelerra//tipwindow.C:37
 msgid "Shift-click on a curve keyframe to snap it to the neighboring values."
@@ -6887,8 +6972,8 @@ msgstr "Аудио -> Сопоставить 1:1 сопоставляет каж
 msgid ""
 "Alt + left moves to the previous edit handle.\n"
 "Alt + right moves to the next edit handle.\n"
-msgstr "Alt + Ñ\81Ñ\82Ñ\80елка Ð²Ð¿Ñ\80аво - Ð¿ÐµÑ\80еÑ\85од ÐºÑ\83Ñ\80Ñ\81оÑ\80а Ð²Ð»Ðµво к границе редактирования.\n"
-"Alt + Ñ\81Ñ\82Ñ\80елка Ð²Ð»ÐµÐ²Ð¾ - Ð¿ÐµÑ\80еÑ\85од ÐºÑ\83Ñ\80Ñ\81оÑ\80а Ð²Ð¿Ñ\80аво к границе редактирования.\n"
+msgstr "Alt + Ñ\81Ñ\82Ñ\80елка Ð²Ð¿Ñ\80аво - Ð¿ÐµÑ\80еÑ\85од ÐºÑ\83Ñ\80Ñ\81оÑ\80а Ð²Ð¿Ñ\80аво к границе редактирования.\n"
+"Alt + Ñ\81Ñ\82Ñ\80елка Ð²Ð»ÐµÐ²Ð¾ - Ð¿ÐµÑ\80еÑ\85од ÐºÑ\83Ñ\80Ñ\81оÑ\80а Ð²Ð»Ðµво к границе редактирования.\n"
 
 #: cinelerra//tipwindow.C:74
 msgid ""
@@ -6912,7 +6997,7 @@ msgstr "След. совет."
 msgid "Previous tip"
 msgstr "Предыд. совет."
 
-#: cinelerra//trackcanvas.C:4208
+#: cinelerra//trackcanvas.C:4193
 msgid "keyframe"
 msgstr "ключевой кадр"
 
@@ -6969,7 +7054,7 @@ msgstr "Канал выхода:"
 
 #: cinelerra//vdeviceprefs.C:433
 msgid "Fields:"
-msgstr ""
+msgstr "Поля:"
 
 #: cinelerra//vdeviceprefs.C:463
 msgid "Display:"
@@ -7005,7 +7090,7 @@ msgstr "Ланцоша / Ланцоша"
 
 #: cinelerra//videowindowgui.C:35
 msgid ": Video out"
-msgstr ""
+msgstr ": Настройки видео (выход)"
 
 #: cinelerra//viewmenu.C:36
 msgid "Show assets"
@@ -7023,104 +7108,104 @@ msgstr "Показывать переходы"
 msgid "Plugin Autos"
 msgstr "Автоматизация"
 
-#: cinelerra//vpatchgui.C:294 cinelerra//vpatchgui.C:299
+#: cinelerra//vpatchgui.C:316 cinelerra//vpatchgui.C:321
 msgid "mode"
 msgstr "режим"
 
-#: cinelerra//vpatchgui.C:345 cinelerra//vpatchgui.C:369
+#: cinelerra//vpatchgui.C:353 cinelerra//vpatchgui.C:377
 #: plugins/overlay/overlay.C:153 plugins/overlay/overlay.C:178
 msgid "Normal"
 msgstr "Нормальный"
 
-#: cinelerra//vpatchgui.C:346 plugins/overlay/overlay.C:154
+#: cinelerra//vpatchgui.C:354 plugins/overlay/overlay.C:154
 msgid "Addition"
 msgstr "Добавление"
 
-#: cinelerra//vpatchgui.C:347 plugins/overlay/overlay.C:155
+#: cinelerra//vpatchgui.C:355 plugins/overlay/overlay.C:155
 msgid "Subtract"
 msgstr "Вычитание"
 
-#: cinelerra//vpatchgui.C:348 plugins/overlay/overlay.C:156
+#: cinelerra//vpatchgui.C:356 plugins/overlay/overlay.C:156
 #: plugins/overlayaudio/overlayaudio.C:175
 msgid "Multiply"
 msgstr "Умножение"
 
-#: cinelerra//vpatchgui.C:349 plugins/overlay/overlay.C:157
+#: cinelerra//vpatchgui.C:357 plugins/overlay/overlay.C:157
 msgid "Divide"
 msgstr "Деление"
 
-#: cinelerra//vpatchgui.C:350 plugins/overlay/overlay.C:158
+#: cinelerra//vpatchgui.C:358 plugins/overlay/overlay.C:158
 #: plugins/timeavg/timeavgwindow.C:247
 msgid "Replace"
 msgstr "Замещение"
 
-#: cinelerra//vpatchgui.C:351 plugins/overlay/overlay.C:159
+#: cinelerra//vpatchgui.C:359 plugins/overlay/overlay.C:159
 msgid "Max"
 msgstr "Максимум"
 
-#: cinelerra//vpatchgui.C:352 plugins/cdripper/cdripwindow.C:44
+#: cinelerra//vpatchgui.C:360 plugins/cdripper/cdripwindow.C:44
 #: plugins/cdripper/cdripwindow.C:48 plugins/overlay/overlay.C:160
 msgid "Min"
 msgstr "Мин."
 
-#: cinelerra//vpatchgui.C:353 plugins/denoiseseltempavg/seltempavgwindow.C:87
+#: cinelerra//vpatchgui.C:361 plugins/denoiseseltempavg/seltempavgwindow.C:87
 #: plugins/overlay/overlay.C:161 plugins/timeavg/timeavgwindow.C:208
 msgid "Average"
 msgstr "Усреднение (Avg)"
 
-#: cinelerra//vpatchgui.C:354 plugins/overlay/overlay.C:162
+#: cinelerra//vpatchgui.C:362 plugins/overlay/overlay.C:162
 msgid "Darken"
 msgstr ""
 
-#: cinelerra//vpatchgui.C:355 plugins/overlay/overlay.C:163
+#: cinelerra//vpatchgui.C:363 plugins/overlay/overlay.C:163
 msgid "Lighten"
 msgstr ""
 
-#: cinelerra//vpatchgui.C:356 plugins/overlay/overlay.C:164
+#: cinelerra//vpatchgui.C:364 plugins/overlay/overlay.C:164
 msgid "Dst"
 msgstr ""
 
-#: cinelerra//vpatchgui.C:357 plugins/overlay/overlay.C:165
+#: cinelerra//vpatchgui.C:365 plugins/overlay/overlay.C:165
 msgid "DstAtop"
 msgstr ""
 
-#: cinelerra//vpatchgui.C:358 plugins/overlay/overlay.C:166
+#: cinelerra//vpatchgui.C:366 plugins/overlay/overlay.C:166
 msgid "DstIn"
 msgstr ""
 
-#: cinelerra//vpatchgui.C:359 plugins/overlay/overlay.C:167
+#: cinelerra//vpatchgui.C:367 plugins/overlay/overlay.C:167
 msgid "DstOut"
 msgstr ""
 
-#: cinelerra//vpatchgui.C:360 plugins/overlay/overlay.C:168
+#: cinelerra//vpatchgui.C:368 plugins/overlay/overlay.C:168
 msgid "DstOver"
 msgstr ""
 
-#: cinelerra//vpatchgui.C:361 plugins/overlay/overlay.C:169
+#: cinelerra//vpatchgui.C:369 plugins/overlay/overlay.C:169
 msgid "Src"
 msgstr ""
 
-#: cinelerra//vpatchgui.C:362 plugins/overlay/overlay.C:170
+#: cinelerra//vpatchgui.C:370 plugins/overlay/overlay.C:170
 msgid "SrcAtop"
 msgstr ""
 
-#: cinelerra//vpatchgui.C:363 plugins/overlay/overlay.C:171
+#: cinelerra//vpatchgui.C:371 plugins/overlay/overlay.C:171
 msgid "SrcIn"
 msgstr ""
 
-#: cinelerra//vpatchgui.C:364 plugins/overlay/overlay.C:172
+#: cinelerra//vpatchgui.C:372 plugins/overlay/overlay.C:172
 msgid "SrcOut"
 msgstr ""
 
-#: cinelerra//vpatchgui.C:365 plugins/overlay/overlay.C:173
+#: cinelerra//vpatchgui.C:373 plugins/overlay/overlay.C:173
 msgid "SrcOver"
 msgstr ""
 
-#: cinelerra//vpatchgui.C:366 plugins/overlay/overlay.C:174
+#: cinelerra//vpatchgui.C:374 plugins/overlay/overlay.C:174
 msgid "Or"
 msgstr ""
 
-#: cinelerra//vpatchgui.C:367 plugins/overlay/overlay.C:175
+#: cinelerra//vpatchgui.C:375 plugins/overlay/overlay.C:175
 msgid "Xor"
 msgstr ""
 
@@ -7613,6 +7698,7 @@ msgstr "Спад:"
 #: plugins/diffkey/diffkey.C:293 plugins/histogram/histogramwindow.C:260
 #: plugins/histogram_bezier/bistogramwindow.C:184
 #: plugins/timeavg/timeavgwindow.C:71 plugins/unsharp/unsharpwindow.C:63
+#: plugins/yuv411/yuv411win.C:39
 msgid "Threshold:"
 msgstr "Порог:"
 
@@ -8669,7 +8755,7 @@ msgstr "Растягивание"
 
 #: plugins/lens/lens.C:494
 msgid "R Field of View:"
-msgstr "Поле зрения в канале R (крас.)"
+msgstr "Поле зрения в канале R (красн.)"
 
 #: plugins/lens/lens.C:495
 msgid "G Field of View:"
@@ -9482,11 +9568,13 @@ msgstr "Вход. Высота:"
 msgid "Out R:"
 msgstr ""
 
-#: plugins/scaleratio/scaleratiowin.C:70 plugins/translate/translatewin.C:98
+#: plugins/scaleratio/scaleratiowin.C:70 plugins/svg/svgwin.C:63
+#: plugins/translate/translatewin.C:98
 msgid "Out W:"
 msgstr "Вых. Ширина:"
 
-#: plugins/scaleratio/scaleratiowin.C:75 plugins/translate/translatewin.C:104
+#: plugins/scaleratio/scaleratiowin.C:75 plugins/svg/svgwin.C:72
+#: plugins/translate/translatewin.C:104
 msgid "Out H:"
 msgstr "Вых. Высота:"
 
@@ -9607,74 +9695,82 @@ msgstr ""
 msgid "Spectrogram"
 msgstr "Анализ спектра"
 
-#: plugins/svg/svg.C:120
+#: plugins/svg/svg.C:100
 msgid "SVG via Inkscape"
 msgstr "SVG через Inkscape"
 
-#: plugins/svg/svg.C:211
+#: plugins/svg/svg.C:185
 #, c-format
 msgid "Running command %s\n"
 msgstr "Запуск команды %s\n"
 
-#: plugins/svg/svg.C:216
+#: plugins/svg/svg.C:190
 #, c-format
 msgid "Export of %s to %s failed\n"
 msgstr "Экспорт %s в %s не удался\n"
 
-#: plugins/svg/svg.C:244
+#: plugins/svg/svg.C:209
 #, c-format
 msgid "The file %s that was generated from %s is not in PNG format. Try to delete all *.png files.\n"
 msgstr ""
 
-#: plugins/svg/svg.C:249
+#: plugins/svg/svg.C:214
 #, c-format
 msgid "Access mmap to %s as %s failed.\n"
 msgstr ""
 
-#: plugins/svg/svgwin.C:83 plugins/translate/translatewin.C:86
+#: plugins/svg/svgwin.C:58 plugins/translate/translatewin.C:86
 msgid "Out X:"
 msgstr "Вывод по X:"
 
-#: plugins/svg/svgwin.C:89 plugins/translate/translatewin.C:92
+#: plugins/svg/svgwin.C:69 plugins/translate/translatewin.C:92
 msgid "Out Y:"
 msgstr "Вывод по Y:"
 
-#: plugins/svg/svgwin.C:155
+#: plugins/svg/svgwin.C:77
+msgid "DPI:"
+msgstr "DPI:"
+
+#: plugins/svg/svgwin.C:170
 msgid "New/Open SVG..."
 msgstr "Новый/Откр.SVG"
 
-#: plugins/svg/svgwin.C:295
-msgid "Error while creating fifo file"
-msgstr ""
-
-#: plugins/svg/svgwin.C:308
+#: plugins/svg/svgwin.C:335
 #, c-format
 msgid "Inkscape has exited\n"
 msgstr "Inkscape завершил работу\n"
 
-#: plugins/svg/svgwin.C:310
+#: plugins/svg/svgwin.C:337
 #, c-format
 msgid "Plugin window has closed\n"
 msgstr "Плагин закрыл окно\n"
 
 #: plugins/svg/svgwin.C:344
+msgid "Error opening fifo file"
+msgstr "Ошибка при открытии файла fifo"
+
+#: plugins/svg/svgwin.C:373
 #, c-format
 msgid "Running external SVG editor: %s\n"
 msgstr "Запуск внешнего SVG-редактора: %s\n"
 
-#: plugins/svg/svgwin.C:348
+#: plugins/svg/svgwin.C:377
 #, c-format
 msgid "External SVG editor finished\n"
 msgstr "Внешний SVG-редактор завершил работу\n"
 
-#: plugins/svg/svgwin.C:364
+#: plugins/svg/svgwin.C:393
 msgid "SVG Plugin: Pick SVG file"
 msgstr "SVG-плагин: Выбор SVG-файла"
 
-#: plugins/svg/svgwin.C:365
+#: plugins/svg/svgwin.C:394
 msgid "Open an existing SVG file or create a new one"
 msgstr "Откройте существующий SVG-файл или создайте новый"
 
+#: plugins/svg/svgwin.C:423
+msgid "update dpi"
+msgstr "обновить dpi"
+
 #: plugins/swapchannels/swapchannels.C:102
 #: plugins/swapchannels/swapchannels.C:211
 msgid "Swap channels"
@@ -9877,8 +9973,7 @@ msgstr "Ошибка: TimeFront plugin - Используется прозрач
 #: plugins/timefront/timefront.C:899
 #, c-format
 msgid "TimeFront plugin error: ALPHA track used, but project color model does not have alpha\n"
-msgstr "Ошибка: TimeFront plugin - Используются альфа - маска и трек как карта "
-"смещения,\n"
+msgstr "Ошибка: TimeFront plugin - Используются альфа - маска и трек как карта смещения,\n"
 "но цветовая модель проекта не имеет альфа - канала.\n"
 
 #: plugins/timefront/timefront.C:906
@@ -10091,6 +10186,34 @@ msgstr "V:"
 msgid "YUV"
 msgstr "YUV"
 
+#: plugins/yuv411/yuv411.C:73
+msgid "YUV411"
+msgstr "YUV411"
+
+#: plugins/yuv411/yuv411win.C:20
+msgid "Vertical average"
+msgstr ""
+
+#: plugins/yuv411/yuv411win.C:26
+msgid "Horizontal interpolate"
+msgstr ""
+
+#: plugins/yuv411/yuv411win.C:32
+msgid "Inpainting method"
+msgstr ""
+
+#: plugins/yuv411/yuv411win.C:36
+msgid "Offset:"
+msgstr ""
+
+#: plugins/yuv411/yuv411win.C:42
+msgid "Bias:"
+msgstr ""
+
+#: plugins/yuv411/yuv411win.C:48
+msgid "Warning: colormodel not YUV"
+msgstr "Предупреждение: цвет. модель не YUV"
+
 #: plugins/yuvshift/yuvshift.C:171
 msgid "Y_dx:"
 msgstr "Y_dx:"
@@ -10134,46 +10257,3 @@ msgstr "Увеличение"
 #: plugins/zoomblur/zoomblur.C:402
 msgid "Zoom Blur"
 msgstr "Размытие масштабом"
-
-msgid "Audio Effects"
-msgstr "Аудио эффектов"
-msgid "Video Effects"
-msgstr "Видео эффектов"
-msgid "Audio Transitions"
-msgstr "Аудио Переходы"
-msgid "Video Transitions"
-msgstr "Видео Переходы"
-msgid "Labels"
-msgstr "Метки"
-msgid "Clips"
-msgstr "Клипсы"
-msgid "Media"
-msgstr "мультимедиа"
-
-msgid "Flags"
-msgstr "флажки"
-
-msgid "Show Plugin Settings"
-msgstr "Показать Плагина настройки "
-
-msgid "speed"
-msgstr "скорость "
-
-msgid "XML file %s\n"
-msgstr "XML файла %s\n"
-
-msgid "Unknown %s"
-msgstr "Неизвестно %s"
-
-msgid "Vertical average"
-msgstr "Вертикальное усредняем"
-msgid "Horizontal interpolate"
-msgstr "Горизонтальное интерполировать"
-
-msgid "Offset:"
-msgstr "Смещение:"
-msgid "Bias:"
-msgstr "Смещение:"
-msgid "Warning: colormodel not YUV"
-msgstr "Предупреждение: colormodel not YUV"
-