added keyframe reticle, fixes: DEL, transition at endtrk, DVD/BD render menu
[goodguy/history.git] / cinelerra-5.1 / cinelerra / preferences.C
index 0eca68eb76919e43390d05f09904159a449efc16..89bf4424cbf11e4d3385a18bace9c77a2337ff2b 100644 (file)
@@ -65,6 +65,7 @@ Preferences::Preferences()
        index_size = 0x400000;
        index_count = 500;
        use_thumbnails = 1;
+       keyframe_reticle = HAIRLINE_DRAGGING;
        trap_sigsegv = 1;
        trap_sigintr = 1;
        theme[0] = 0;
@@ -165,6 +166,7 @@ void Preferences::copy_from(Preferences *that)
        index_size = that->index_size;
        index_count = that->index_count;
        use_thumbnails = that->use_thumbnails;
+       keyframe_reticle = that->keyframe_reticle;
        strcpy(theme, that->theme);
 
        use_tipwindow = that->use_tipwindow;
@@ -294,6 +296,7 @@ int Preferences::load_defaults(BC_Hash *defaults)
        index_size = defaults->get("INDEX_SIZE", index_size);
        index_count = defaults->get("INDEX_COUNT", index_count);
        use_thumbnails = defaults->get("USE_THUMBNAILS", use_thumbnails);
+       keyframe_reticle = defaults->get("KEYFRAME_RETICLE", keyframe_reticle);
        trap_sigsegv = defaults->get("TRAP_SIGSEGV", trap_sigsegv);
        trap_sigintr = defaults->get("TRAP_SIGINTR", trap_sigintr);
 
@@ -409,6 +412,7 @@ int Preferences::save_defaults(BC_Hash *defaults)
        defaults->update("INDEX_SIZE", index_size);
        defaults->update("INDEX_COUNT", index_count);
        defaults->update("USE_THUMBNAILS", use_thumbnails);
+       defaults->update("KEYFRAME_RETICLE", keyframe_reticle);
        defaults->update("TRAP_SIGSEGV", trap_sigsegv);
        defaults->update("TRAP_SIGINTR", trap_sigintr);
 //     defaults->update("GLOBAL_PLUGIN_DIR", global_plugin_dir);
@@ -698,18 +702,16 @@ int Preferences::get_node_port(int number)
 int Preferences::get_asset_file_path(Asset *asset, char *path)
 {
        strcpy(path, asset->path);
-       int result = access(path, R_OK);
+       int result = !access(path, R_OK) ? 0 : -1;
        if( !result && asset->format == FILE_MPEG ) {
-               char source_filename[BCTEXTLEN];
-               char index_filename[BCTEXTLEN];
+               char source_filename[BCTEXTLEN], index_filename[BCTEXTLEN];
                IndexFile::get_index_filename(source_filename,
-                       index_directory, index_filename,
-                       asset->path, ".toc");
-               struct stat st;
-               if( !access(index_filename, R_OK) &&
-                   !stat(index_filename,&st) && st.st_size > 0 )
+                       index_directory, index_filename, asset->path, ".toc");
                strcpy(path, index_filename);
+               if( access(path, R_OK) )
+                       result = 1;
        }
+// result = 0, asset->path/toc exist, -1 no asset, 1 no toc
        return result;
 }