add 1:1 convert, add es.po: thx sergio, cwdw zoom tweak, add done beep pots, bd forma...
[goodguy/cinelerra.git] / cinelerra-5.1 / cinelerra / mainsession.C
index e40f343efbc16adc8a414a8c559a971442186c82..e0a8a8265f57752e73b347788500a9f8b4a3b116 100644 (file)
@@ -201,7 +201,7 @@ void MainSession::default_window_positions(int window_config)
        int border_bottom = display_info.get_bottom_border();
 
        int dual_head = screens > 1 ? 1 : 0;
-       int left_w = 0, right_w = root_w;
+       int left_w = 0, left_h = 0, right_w = 0;
        int xin_screens = display_info.get_xinerama_screens();
        if( xin_screens > 1 ) {
                dual_head = 1;
@@ -210,7 +210,7 @@ void MainSession::default_window_positions(int window_config)
                        if( display_info.xinerama_geometry(s, x, y, w, h) )
                                continue;
                        if( !y && !x ) {
-                               left_w = w;
+                               left_w = w;  left_h = h;
                                break;
                        }
                }
@@ -229,14 +229,13 @@ void MainSession::default_window_positions(int window_config)
                                root_w = right_w;
                        }
                        else {
-                       // use same aspect ratio to compute left height
                                root_w = left_w;
-                               root_h = (root_w*root_h) / right_w;
+                               root_h = left_h;
                        }
                }
        }
 // Wider than 16:9, narrower than dual head
-       if( screens < 2 && (float)root_w / root_h > 1.8 ) {
+       else if( screens < 2 && (float)root_w / root_h > 1.8 ) {
                dual_head = 1;
                switch( root_h ) {
                case 600:  right_w = 800;   break;
@@ -275,10 +274,10 @@ void MainSession::default_window_positions(int window_config)
                BC_DisplayInfo b_display_info(b_x11_host);
                b_root_w = b_display_info.get_root_w();
                b_root_h = b_display_info.get_root_h();
-               cwindow_x = 50;
-               cwindow_y = 50;
-               cwindow_w = b_root_w-100;
-               cwindow_h = b_root_h-100;
+               cwindow_x = xS(50);
+               cwindow_y = yS(50);
+               cwindow_w = b_root_w-xS(100);
+               cwindow_h = b_root_h-yS(100);
        }
 
        ctool_x = cwindow_x + cwindow_w / 2;
@@ -294,11 +293,11 @@ void MainSession::default_window_positions(int window_config)
        awindow_w = root_x + root_w - awindow_x - border_left - border_right;
        awindow_h = mwindow_h;
 
-       bwindow_w = 600;
-       bwindow_h = 360;
+       bwindow_w = xS(600);
+       bwindow_h = yS(360);
 
-       ewindow_w = 640;
-       ewindow_h = 240;
+       ewindow_w = xS(640);
+       ewindow_h = yS(240);
 
        channels_x = 0;
        channels_y = 0;
@@ -306,12 +305,12 @@ void MainSession::default_window_positions(int window_config)
        picture_y = 0;
        scope_x = 0;
        scope_y = 0;
-       scope_w = 640;
-       scope_h = 320;
+       scope_w = xS(640);
+       scope_h = yS(320);
        histogram_x = 0;
        histogram_y = 0;
-       histogram_w = 320;
-       histogram_h = 480;
+       histogram_w = xS(320);
+       histogram_h = yS(480);
        record_scope = 0;
        use_hist = 1;
        use_wave = 1;
@@ -324,7 +323,7 @@ void MainSession::default_window_positions(int window_config)
                        mwindow->edl->session->audio_channels,
                        1);
        else
-               lwindow_w = 100;
+               lwindow_w = xS(100);
 
        lwindow_y = 0;
        lwindow_x = root_w - lwindow_w;
@@ -332,36 +331,36 @@ void MainSession::default_window_positions(int window_config)
 
        rwindow_x = root_x;
        rwindow_y = root_y;
-       rwindow_h = 500;
-       rwindow_w = 650;
+       rwindow_h = yS(500);
+       rwindow_w = xS(650);
 
        cswindow_x = root_x;
        cswindow_y = root_y;
-       cswindow_w = 1280;
-       cswindow_h = 600;
+       cswindow_w = xS(1280);
+       cswindow_h = yS(600);
 
        if( !dual_head || window_config != 2 ) {
-               rmonitor_x = rwindow_x + rwindow_w + 10;
+               rmonitor_x = rwindow_x + rwindow_w + xS(10);
                rmonitor_y = rwindow_y;
                rmonitor_w = root_x + root_w - rmonitor_x;
                rmonitor_h = rwindow_h;
        }
        else {
-               rmonitor_x = cswindow_x = 50;
-               rmonitor_y = cswindow_y = 50;
-               rmonitor_w = b_root_w-100;
-               rmonitor_h = b_root_h-100;
+               rmonitor_x = cswindow_x = xS(50);
+               rmonitor_y = cswindow_y = yS(50);
+               rmonitor_w = b_root_w-xS(100);
+               rmonitor_h = b_root_h-yS(100);
                if( cswindow_w < rmonitor_w ) cswindow_w = rmonitor_w;
                if( cswindow_h < rmonitor_h ) cswindow_h = rmonitor_h;
        }
 
        swindow_x = root_x;
        swindow_y = root_y;
-       swindow_w = 600;
-       swindow_h = 400;
+       swindow_w = xS(600);
+       swindow_h = yS(400);
 
-       batchrender_w = 750;
-       batchrender_h = 400;
+       batchrender_w = xS(750);
+       batchrender_h = yS(400);
        batchrender_x = root_w / 2 - batchrender_w / 2;
        batchrender_y = root_h / 2 - batchrender_h / 2;
 }
@@ -432,7 +431,7 @@ int MainSession::load_defaults(BC_Hash *defaults)
 //printf("MainSession::load_defaults 1\n");
 
 // Other windows
-       afolders_w = defaults->get("ABINS_W", 200);
+       afolders_w = defaults->get("ABINS_W", xS(200));
 
        bwindow_w = defaults->get("BWINDOW_W", bwindow_w);
        bwindow_h = defaults->get("BWINDOW_H", bwindow_h);
@@ -470,19 +469,19 @@ int MainSession::load_defaults(BC_Hash *defaults)
 
        cwindow_controls = defaults->get("CWINDOW_CONTROLS", cwindow_controls);
 
-       plugindialog_w = defaults->get("PLUGINDIALOG_W", 510);
-       plugindialog_h = defaults->get("PLUGINDIALOG_H", 415);
-//     presetdialog_w = defaults->get("PRESETDIALOG_W", 510);
-//     presetdialog_h = defaults->get("PRESETDIALOG_H", 415);
-       keyframedialog_w = defaults->get("KEYFRAMEDIALOG_W", 320);
-       keyframedialog_h = defaults->get("KEYFRAMEDIALOG_H", 415);
-       keyframedialog_column1 = defaults->get("KEYFRAMEDIALOG_COLUMN1", 150);
-       keyframedialog_column2 = defaults->get("KEYFRAMEDIALOG_COLUMN2", 100);
+       plugindialog_w = defaults->get("PLUGINDIALOG_W", xS(510));
+       plugindialog_h = defaults->get("PLUGINDIALOG_H", yS(415));
+//     presetdialog_w = defaults->get("PRESETDIALOG_W", xS(510));
+//     presetdialog_h = defaults->get("PRESETDIALOG_H", yS(415));
+       keyframedialog_w = defaults->get("KEYFRAMEDIALOG_W", xS(320));
+       keyframedialog_h = defaults->get("KEYFRAMEDIALOG_H", yS(415));
+       keyframedialog_column1 = defaults->get("KEYFRAMEDIALOG_COLUMN1", xS(150));
+       keyframedialog_column2 = defaults->get("KEYFRAMEDIALOG_COLUMN2", xS(100));
        keyframedialog_all = defaults->get("KEYFRAMEDIALOG_ALL", 0);
-       menueffect_w = defaults->get("MENUEFFECT_W", 580);
-       menueffect_h = defaults->get("MENUEFFECT_H", 350);
-       transitiondialog_w = defaults->get("TRANSITIONDIALOG_W", 320);
-       transitiondialog_h = defaults->get("TRANSITIONDIALOG_H", 512);
+       menueffect_w = defaults->get("MENUEFFECT_W", xS(580));
+       menueffect_h = defaults->get("MENUEFFECT_H", yS(350));
+       transitiondialog_w = defaults->get("TRANSITIONDIALOG_W", xS(320));
+       transitiondialog_h = defaults->get("TRANSITIONDIALOG_H", yS(512));
 
        current_tip = defaults->get("CURRENT_TIP", current_tip);
        actual_frame_rate = defaults->get("ACTUAL_FRAME_RATE", (float)-1);