jstree-table icon indicating copy to clipboard operation
jstree-table copied to clipboard

mouseup bug, leading to resize_column.jstree-table bad arguments, and my fix

Open markx100x opened this issue 5 years ago • 0 comments

Here is the entire mouseup function. The original code is commented out as "orig". colNum is always 0 in current code. My fix is included. There could be a better implementation. Mark

var ref, cols, width, headers, currentTree, colNum;
if (isClickedSep) {

    /* orig
    colNum = toResize.prevAll(".jstree-table-column").length;
currentTree = toResize.closest(".jstree-table-wrapper").find(".jstree");
ref = $.jstree.reference(currentTree);
cols = ref.settings.table.columns;
headers = toResize.parent().children("div.jstree-table-column");
if (isNaN(colNum) || colNum < 0) { ref._tableSettings.treeWidthDiff = currentTree.find("ins:eq(0)").width() + currentTree.find("a:eq(0)").width() - ref._tableSettings.columns[0].width; }
width = ref._tableSettings.columns[colNum].width = parseFloat(toResize.css("width"));
isClickedSep = false;
toResize = null;
    */

    currentTree = toResize.closest(".jstree-table-wrapper").find(".jstree");
    ref = $.jstree.reference(currentTree);
    cols = ref.settings.table.columns;

    //
    // Find column number that is being resized from header that is being resized.
    //
    var columnName = toResize.data('jstreetable-column');

    for (var i = 0; i < cols.length; i++)
    {
        if (cols[i].value === columnName)
        {
            colNum = i;
            break;
        }
    }

if (isNaN(colNum) || colNum < 0) { ref._tableSettings.treeWidthDiff = currentTree.find("ins:eq(0)").width() + currentTree.find("a:eq(0)").width() - ref._tableSettings.columns[0].width; }
width = ref._tableSettings.columns[colNum].width = parseFloat(toResize.css("width"));
isClickedSep = false;
toResize = null;

    currentTree.trigger("resize_column.jstree-table", [colNum, width]);

}

markx100x avatar Nov 01 '19 22:11 markx100x