I'm still hoping to get some help creating a custom column for this to be complete but I thought I would post all my buttons.
Leo helped me out and created a column script that will indicate if an index is missing or not Thank you, good sir!
What these buttons allow you to do:
Index selected video(s)
Index all videos
Select all indexes
Hide all indexes*
View hidden indexes
Play video from viewing index file
Play video from viewing index file and close Standalone Image Viewer
Select the corresponding video file from the currently viewed index
Demo
Requirements:
Dopus 12 (for the custom Standalone Image Viewer buttons)
Some kind of video thumbnail indexer (I'll be using Video Thumbnail Maker and my buttons will reflect that. Adjust for your needs. NOTE: Using Video Thumbnail Maker, I found I needed to use the full path to the saved profile in order to work correctly)
Buttons for when you right-click on a video
Settings > File Types > File Type Groups > Movies (Context Menu)
View Thumbnail
@nofilenamequoting
Show "{filepath$}.jpg" AUTOFILELIST
I started using VTM this week. It is a very nice program.
I made a script button to open the preview/index of a selected video file. It is a bit more complex than your "View Thumbnail" button. My script checks if there is a VTX file and opens it by default, otherwise it checks if there is a JPG file and opens it.
If you are interested, here is the Javascript code:
// Generic Name: View Preview
// Type: Button
// Function: open file with preview thumbnails if it exist for the first selected movie file.
// License: CC0 Public Domain
// Creator: https://andersonnnunes.org/
// ------------------------------- Button Preferences
@disablenosel:files
// ------------------------------- Event
function OnClick(clickData)
{
// Name of file type group for movies.
// If you defined a personalized file type group for your movies, type it here.
var localizedMovieGroupTypeName = "Movies";
// --------------------
// Determine verbosity level.
// 1 - Print informative log.
// 0 - Print nothing.
var verbose = 0;
// ------------------------------- Main
DOpus.ClearOutput();
// Check that there are files selected.
if (clickData.func.sourcetab.selected_files.count == 0)
{
print("No files are selected.");
}
else
{
// Adjust command behavior.
var cmd = clickData.func.command;
cmd.deselect = false;
cmd.SetQualifiers("none");
cmd.ClearFiles;
// Filter selected files to consider only movie files.
for (var eSel = new Enumerator(clickData.func.sourcetab.selected_files); !eSel.atEnd(); eSel.moveNext())
{
var selectedItem = eSel.item();
for(var i=0; i<selectedItem.groups.length; i++){
if (selectedItem.groups(i).display_name == localizedMovieGroupTypeName)
{
cmd.AddFile(selectedItem);
}
}
}
// For each movie file, define what to do.
for (var iSel = new Enumerator(cmd.files); !iSel.atEnd(); iSel.moveNext())
{
// Define paths.
var cItem = iSel.item()
var resPath = String(cItem.realpath);
var extension = String(cItem.ext_m);
var formats = new Array();
var formatA = resPath + ".vtx";
formats.push(formatA);
var formatB = resPath.replace(extension, ".vtx");
formats.push(formatB);
var formatC = resPath.replace(extension, ".jpg");
formats.push(formatC);
var formatD = resPath + ".jpg";
formats.push(formatD);
// Find files.
for (var i = 0; i < formats.length; i++)
{
if (DOpus.FSUtil.Exists(formats[i]))
{
if (i <= 1) {
var openPreviewCmdLine = "ContextMenu VERB=Open FILE=" + "\"" + formats[i] + "\"";
} else {
var openPreviewCmdLine = "Show AUTOFILELIST " + "\"" + formats[i] + "\"";
}
cmd.AddLine(openPreviewCmdLine);
// Execute commands.
cmd.Run;
return;
}
}
}
}
// Print only if requested.
function print(text){
if (verbose) {
DOpus.Output(text);
}
}
}
When I upgraded from 12.6 to 12.7, I lost the use of my Standalone Viewer button. The viewer closes (2nd line) but no video file is selected.
Select DESELECTNOMATCH SETFOCUS EXACT PATTERN={allfile|noext}
Show VIEWERCMD=close
Example file names:
video.mp4
video.mp4.jpg
Running ...{allfile|noext} while viewing video.mp4.jpg in Standalone Viewer, the code would remove the .jpg portion and select my video.mp4 file. Now, nothing gets selected.