diff --git a/xtrn/ddfilelister/ddfilelister.js b/xtrn/ddfilelister/ddfilelister.js index c11bec4ed72c3084ab132e6f3291fcea016f30d0..bc521323211654b9f2e1c9e465fd3eab647e0209 100644 --- a/xtrn/ddfilelister/ddfilelister.js +++ b/xtrn/ddfilelister/ddfilelister.js @@ -280,7 +280,9 @@ var gColors = { fileNormalBkgTrad: "\x01n\x01w", listNumTrad: "\x01g\x01h", fileAreaDescTrad: "\x01c", - fileAreaNumItemsTrad: "\x01b\x01h" + fileAreaNumItemsTrad: "\x01b\x01h", + + filenameInDesc: "\x01g" // Filename when used in the description }; @@ -5354,11 +5356,11 @@ function displayFileExtDescOnMainScreen(pFileIdx, pStartScreenRow, pEndScreenRow // filename. var fileDescIsEmptyOrWhitespace = (fileDesc == "" || /^\s+$/.test(fileDesc)); if (gUseFilenameIfNoDescription && fileDescIsEmptyOrWhitespace) - fileDesc = lfexpand(word_wrap(fileMetadata.name + "\r\n(No description)", maxDescLen, null, false)); + fileDesc = "\x01n" + gColors.filenameInDesc + lfexpand(word_wrap(fileMetadata.name + "\r\n\x01n(No description)", maxDescLen, null, false)); // If there is a description and the filename is too long to fit on the menu, then prepend the // full filename (wrapped) to the the description else if (!fileDescIsEmptyOrWhitespace && fileMetadata.name.length > gFileListMenu.filenameLen) - fileDesc = lfexpand(word_wrap(fileMetadata.name, maxDescLen, null, false)) + "\r\n" + fileDesc; + fileDesc = "\x01n" + gColors.filenameInDesc + lfexpand(word_wrap(fileMetadata.name, maxDescLen, null, false)) + "\r\n\x01n" + fileDesc; // Display the description on the screen var fileDescArray = fileDesc.split("\r\n"); console.attributes = "N"; @@ -5640,7 +5642,7 @@ function getFileInfoLineArrayForTraditionalUI(pFileList, pIdx, pFormatInfo) // There is no description. If the option to use the filename is enabled, then use the filename. if (gUseFilenameIfNoDescription) { - var fileDesc = lfexpand(word_wrap(pFileList[pIdx].name + "\r\n(No description)", pFormatInfo.descLen, null, false)); + var fileDesc = "\x01n" + gColors.filenameInDesc + lfexpand(word_wrap(pFileList[pIdx].name + "\r\n\x01n(No description)", pFormatInfo.descLen, null, false)); var fileDescArray = fileDesc.split("\r\n"); for (var i = 0; i < fileDescArray.length; ++i) descLines.push(fileDescArray[i]); @@ -5654,11 +5656,10 @@ function getFileInfoLineArrayForTraditionalUI(pFileList, pIdx, pFormatInfo) // the the description. if (pFileList[pIdx].name.length > gFileListMenu.filenameLen) { - var filenameLines = []; var fileDescArray = lfexpand(word_wrap(pFileList[pIdx].name, pFormatInfo.descLen, null, false)).split("\r\n"); for (var i = 0; i < fileDescArray.length; ++i) - filenameLines.push(fileDescArray[i]); - descLines = filenameLines.concat(descLines); + fileDescArray[i] = "\x01n" + gColors.filenameInDesc + fileDescArray[i] + "\x01n"; + descLines = fileDescArray.concat(descLines); } } diff --git a/xtrn/ddfilelister/defaultTheme.cfg b/xtrn/ddfilelister/defaultTheme.cfg index 8c8c9a77ff788a521c05a92f2fdaf17603a2d771..43651b1684823ee3dd134df5b0ab42f95f7aac65 100644 --- a/xtrn/ddfilelister/defaultTheme.cfg +++ b/xtrn/ddfilelister/defaultTheme.cfg @@ -68,3 +68,6 @@ listNumTrad=gh fileAreaDescTrad=c ; The number of directories/files for 'normal' colors (for moving a file) fileAreaNumItemsTrad=bh + +; Filename when used in the description +filenameInDesc=g diff --git a/xtrn/ddfilelister/readme.txt b/xtrn/ddfilelister/readme.txt index 56bc50dbe15406671f2ec40db952611a2c40eb18..ac594fe51f4c8a885885f98e8362d7ae7bbb3e69 100644 --- a/xtrn/ddfilelister/readme.txt +++ b/xtrn/ddfilelister/readme.txt @@ -372,6 +372,11 @@ fileAreaDescTrad The file library/directory description for fileAreaNumItemsTrad The number of directories/files for 'normal' colors (for moving a file) +filenameInDesc The filename when used in the description + (for instance, if the filename is too long + to fully fit in the lightbar menu or if + the file has no description) + 5. Strings used from text.dat ============================= diff --git a/xtrn/ddfilelister/revision_history.txt b/xtrn/ddfilelister/revision_history.txt index 40a507001d932fd06915a178ed49cad518678322..8b60c07ae2815eadad1f4025bae2589aec2fd259 100644 --- a/xtrn/ddfilelister/revision_history.txt +++ b/xtrn/ddfilelister/revision_history.txt @@ -8,6 +8,7 @@ Version Date Description 2.28 2025-02-22 If extended descriptions are enabled and a filename is too long to fully fit in the menu, prepend the full filename (wrapped) to the description. + New color theme option: filenameInDesc New bottom line menu option to toggle extended descriptions on/off Fix: useFilenameIfNoDescription option now used in