p/s proxy icon, rework window locks, segv in close_mixers + exportedl, ffmpeg default...
[goodguy/history.git] / cinelerra-5.1 / cinelerra / assetedit.C
index ec9ad57a58a889e03421d9309aa3fd7aaab5087b..ad809f614e610a45a10727474fe55b6286786dfb 100644 (file)
@@ -188,16 +188,13 @@ BC_Window* AssetEdit::new_gui()
 int AssetEdit::window_height()
 {
        int h = 128 + 64;
-       if( indexable->have_audio() )
-               h += 180;
+       if( indexable->have_audio() ) h += 200;
        if( indexable->have_video() ) {
-               h += 200;
+               h += 210;
                if( indexable->is_asset ) {
                        Asset *asset = (Asset *)indexable;
-                       if( asset->format == FILE_MPEG ||
-                           asset->format == FILE_FFMPEG ) {
-                               h += 40;
-                       }
+                       if( File::can_scale_input(asset) )
+                               h += 42;
                }
        }
        return h;
@@ -275,8 +272,7 @@ void AssetEditWindow::create_objects()
        if( asset ) {
                add_subwindow(new BC_Title(x, y, _("File format:")));
                x = x2;
-               add_subwindow(new BC_Title(x, y, File::formattostr(mwindow->plugindb,
-                               asset->format),
+               add_subwindow(new BC_Title(x, y, File::formattostr(asset->format),
                        MEDIUMFONT,
                        mwindow->theme->assetedit_color));
                x = x1;
@@ -502,7 +498,7 @@ void AssetEditWindow::create_objects()
                add_subwindow(win_height);
                y += win_height->get_h() + 5;
 
-               if( asset && (asset->format == FILE_MPEG || asset->format == FILE_FFMPEG )  ) {
+               if( asset && File::can_scale_input(asset) ) {
                        y += 5;
                        x = x1;
                        add_subwindow(new BC_Title(x, y, _("Actual width:")));
@@ -565,7 +561,7 @@ void AssetEditWindow::create_objects()
 void AssetEditWindow::show_info_detail()
 {
        int cur_x, cur_y;
-       get_abs_cursor_xy(cur_x, cur_y, 0);
+       get_abs_cursor(cur_x, cur_y, 0);
        detail_dialog->start((Asset*)asset_edit->indexable, cur_x, cur_y);
 }
 
@@ -875,27 +871,6 @@ AssetEditPath::~AssetEditPath() {}
 
 
 
-
-
-AssetEditFormat::AssetEditFormat(AssetEditWindow *fwindow, char* default_, int y)
- : FormatPopup(fwindow->mwindow->plugindb, 90, y)
-{
-       this->fwindow = fwindow;
-}
-AssetEditFormat::~AssetEditFormat()
-{
-}
-int AssetEditFormat::handle_event()
-{
-       Asset *asset = fwindow->asset_edit->changed_params;
-       asset->format = File::strtoformat(fwindow->mwindow->plugindb,
-               get_selection(0, 0)->get_text());
-       return 1;
-}
-
-
-
-
 DetailAssetButton::DetailAssetButton(AssetEditWindow *fwindow, int x, int y)
  : BC_GenericButton(x, y, _("Detail"))
 {
@@ -952,23 +927,27 @@ void DetailAssetWindow::create_objects()
        strncpy(info,_("no info available"),len);
        if( !mwindow->preferences->get_asset_file_path(asset, file_name) ) {
                switch( asset->format ) {
+#ifdef HAVE_LIBZMPEG
                case FILE_MPEG:
                        FileMPEG::get_info(asset->path, file_name, &info[0],len);
                        break;
+#endif
                case FILE_FFMPEG:
                        FileFFMPEG::get_info(asset->path, &info[0],len);
                        break;
                }
        }
+       lock_window("DetailAssetWindow::create_objects");
        text = new BC_ScrollTextBox(this, x, y, get_w()-32, 23, info, -len);
        text->create_objects();  text->set_text_row(0);
        add_subwindow(new BC_OKButton(this));
        show_window();
+       unlock_window();
 }
 
 void DetailAssetDialog::start(Asset *asset, int x, int y)
 {
-       delete dwindow;
+       close_window();
        this->asset = asset;
        this->x = x;  this->y = y;
        BC_DialogThread::start();