Changeset 390 for branches


Ignore:
Timestamp:
02/07/14 09:50:08 (6 years ago)
Author:
jls17
Message:
Location:
branches/work_304
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/work_304/doc/DocMain.cpp

    r386 r390  
    16401640                << "<button id='typeFilterNone'>&nbsp;</button>" 
    16411641                << "<button id='typeFilterInvert'>~</button>" 
    1642                 << "<span>" 
     1642                << "</span>" 
    16431643        << "</div>"; 
    16441644 
  • branches/work_304/res/object_list.js

    r389 r390  
    1 var FILTER_MAX_RESULT = 100; 
    2 var lastMatchIndex = 0; 
    31var schemaType = new Array(); 
    42 
     
    1412} 
    1513 
     14function initTable(tableId, filterId, resultCountId) { 
     15    var table = $('#' + tableId); 
     16    table.data('filterid', filterId).data('resultid', resultCountId).data('maxresult', 100).data('lastmatches', 0); 
     17} 
     18 
     19function filterTable(tableId, appendNextChunk) { 
     20    var table = $('#' + tableId); 
     21    var search = $('#' + table.data('filterid')).val().replace(" +", " ").replace(" ", ".*"); 
     22    var numSearch = search.search("^\\d+$"); 
     23    var maxMatch = 0 + (table.data('maxresult')); 
     24    var lastMatches = 0; 
     25    var matches = 0; 
     26    var hasTypeFilter = bHasTypeFilter(); 
     27    var hasFilter = (search != null && search.length > 0) || hasTypeFilter; 
     28    var start = 0; 
     29    var end = schemaList.length; 
     30 
     31    if (appendNextChunk) { 
     32        start = table.data('lastindex'); 
     33        lastMatches += table.data('lastmatches'); 
     34    } 
     35    else { 
     36        $('#' + tableId + ' tbody tr:gt(0)').remove(); 
     37    } 
     38 
     39    if (hasFilter) { 
     40        for (var i = start; i < end; i++) 
     41        /*$.each(schemaList, function(i) */{ 
     42            var r = new RegExp(search, "i"); 
     43            if ((!hasTypeFilter || hasTypeFilter && schemaType[schemaList[i][5]]) && (schemaList[i][1].match(r) || (numSearch == 0 && ("" + schemaList[i][0]) == search))) { 
     44                matches++; 
     45                var row = ($("<tr>") 
     46                                        .append($("<td>") 
     47                                                .append(getIcon(rootLevel, 1, 0)) 
     48                                                .append($("<a>").attr("href", schemaList[i][8]).text(schemaList[i][1])) 
     49                                        ) 
     50                                        .append($("<td>").text(schemaList[i][2])) 
     51                                        .append($("<td>").text(schemaList[i][3])) 
     52                                        .append($("<td>").text(schemaList[i][4])) 
     53                                        .append($("<td>").text(ARSchemaType(schemaList[i][5]))) 
     54                                        .append($("<td>").text(schemaList[i][6])) 
     55                                        .append($("<td>").text(schemaList[i][7])) 
     56                                ); 
     57 
     58                table.append(row); 
     59            } 
     60            if (matches >= maxMatch) { 
     61                var row = $("<tr>") 
     62                                        .append($("<td class='warn' colspan=7>").text("Result limit reached! ") 
     63                                                .append($("<a id=showNext href='javascript:void(0)'>Show Next " + maxMatch + "</a>").click(function() { 
     64                                                    $(this).parents('tr:first').remove(); 
     65                                                    filterTable(tableId, 'next'); 
     66                                                })) 
     67                                                .append(" &nbsp; ") 
     68                                                .append($("<a id=showAll href='javascript:void(0)'>Show All</a>").click(function() { 
     69                                                })) 
     70                                        ); 
     71                table.append(row); 
     72                table.data('lastindex', i + 1); 
     73                table.data('lastmatches', lastMatches + matches); 
     74                break; 
     75            } 
     76        } /*)*/; 
     77    } 
     78    $('#' + table.data('resultid')).text((hasFilter ? "showing " + (lastMatches + matches) + " out of " : "")); 
     79} 
     80 
     81function initSchemaTable() { 
     82    if (schemaList != null) { initTable('schemaList', 'formNameFilter', 'schemaListFilterResultCount'); } 
     83} 
     84 
     85function updateSchemaTable() { 
     86    if (schemaList != null) { filterTable('schemaList'/*, 'formNameFilter', 'schemaListFilterResultCount'*/); } 
     87} 
     88 
    1689$('document').ready(function() { 
    1790    var checkBoxes = $('#multiFilter input[type="checkbox"]'); 
     
    2497    }); 
    2598    $("#execFormFilter").click(function() { 
    26         if (schemaList != null) { 
    27             var table_name = 'schemaList'; 
    28             var table = $('#' + table_name); 
    29             var search = $("#formNameFilter").val().replace(" +", " ").replace(" ", ".*"); 
    30             var numSearch = search.search("^\\d+$"); 
    31             var matches = 0; 
    32             var hasTypeFilter = bHasTypeFilter(); 
    33             var hasFilter = (search != null && search.length > 0) || hasTypeFilter; 
    34  
    35             $('#' + table_name + ' tbody tr:gt(0)').remove(); 
    36  
    37             if (hasFilter) { 
    38                 $.each(schemaList, function(i) { 
    39                     var r = new RegExp(search, "i"); 
    40                     if ((!hasTypeFilter || hasTypeFilter && schemaType[schemaList[i][5]]) && (schemaList[i][1].match(r) || (numSearch == 0 && ("" + schemaList[i][0]) == search))) { 
    41                         matches++; 
    42                         var row = ($("<tr>") 
    43                                                         .append($("<td>") 
    44                                                                 .append(getIcon(rootLevel, 1, 0)) 
    45                                                                 .append($("<a>").attr("href", schemaList[i][8]).text(schemaList[i][1])) 
    46                                                         ) 
    47                                                         .append($("<td>").text(schemaList[i][2])) 
    48                                                         .append($("<td>").text(schemaList[i][3])) 
    49                                                         .append($("<td>").text(schemaList[i][4])) 
    50                                                         .append($("<td>").text(ARSchemaType(schemaList[i][5]))) 
    51                                                         .append($("<td>").text(schemaList[i][6])) 
    52                                                         .append($("<td>").text(schemaList[i][7])) 
    53                                                 ); 
    54  
    55                         table.append(row); 
    56                     } 
    57                     if (matches >= FILTER_MAX_RESULT) { 
    58                         var row = $("<tr>") 
    59                                                         .append($("<td class='warn' colspan=7>").text("Result limit reached! ") 
    60                                                                 .append($("<a id=showNext href='javascript:void(0)'>Show Next " + FILTER_MAX_RESULT + "</a>").click(function() { 
    61                                                                 })) 
    62                                                                 .append(" &nbsp; ") 
    63                                                                 .append($("<a id=showAll href='javascript:void(0)'>Show All</a>").click(function() { 
    64                                                                 })) 
    65                                                         ); 
    66                         table.append(row); 
    67                         return false; 
    68                     } 
    69                 }); 
    70             } 
    71             $('#schemaListFilterResultCount').text((hasFilter ? "showing " + matches + " out of " : "")); 
    72         } 
     99        updateSchemaTable(); 
    73100    }); 
    74101    $("#typeFilterAll").click(function() { 
    75102        $('#multiFilter input[type="checkbox"]').each(function() { 
    76             $(this).attr('checked', true); 
     103            this.checked = true; 
    77104        }); 
    78105        $("#execFormFilter").click(); 
     
    80107    $("#typeFilterNone").click(function() { 
    81108        checkBoxes.each(function() { 
    82             $(this).attr('checked', false); 
     109            this.checked = false; 
    83110        }); 
    84111        $("#execFormFilter").click(); 
     
    86113    $("#typeFilterInvert").click(function() { 
    87114        checkBoxes.each(function() { 
    88             $(this).attr('checked', !$(this).attr('checked')); 
     115            this.checked = !this.checked; 
    89116        }); 
    90117        $("#execFormFilter").click(); 
     
    94121    }); 
    95122 
     123    initSchemaTable(); 
    96124    if ($("#formNameFilter").val() != "" || bHasTypeFilter()) { 
    97125        $("#execFormFilter").click(); 
Note: See TracChangeset for help on using the changeset viewer.