Changeset 29:c4744bfad06b in livinglogic.python.pycoco

Show
Ignore:
Timestamp:
10/15/06 11:44:32 (13 years ago)
Author:
Walter Doerwald <walter@…>
Branch:
default
Message:

Give each column in the filelist a separate className.

Change argument order of get_nth_child().

Add get_class_child().

Pass id to sort function (will be used to style the sorted column).

Change numeric sort buttons from "1-9" to "123".

Location:
src/pycoco
Files:
3 modified

Legend:

Unmodified
Added
Removed
  • src/pycoco/coverage.css

    r28 r29  
    124124    text-align: left; 
    125125} 
    126 table.files tbody td.int 
     126table.files tbody td.nroflines, 
     127table.files tbody td.coverablelines, 
     128table.files tbody td.coveredlines, 
     129table.files tbody td.coverage 
    127130{ 
    128131    text-align: right; 
     
    131134{ 
    132135    color: #999; 
     136} 
     137 
     138table.files tbody td.sorted 
     139{ 
     140    background-color: #eee; 
    133141} 
    134142 
  • src/pycoco/coverage.js

    r28 r29  
    1313} 
    1414 
    15 function get_nth_child(node, count, type) 
     15function get_nth_child(node, type, count) 
    1616{ 
    1717    if (!count) 
     
    2929} 
    3030 
     31function get_class_child(node, type, class_) 
     32{ 
     33    if (type) 
     34        type = type.toLowerCase(); 
     35    for (var i = 0; i < node.childNodes.length; ++i) 
     36    { 
     37        var child = node.childNodes[i]; 
     38        if (child.nodeType == 1 && 
     39            (!type || (child.nodeName.toLowerCase() == type)) && 
     40            (!class_ || (child.getAttribute("class") == class_)) 
     41        ) 
     42            return child; 
     43    } 
     44    return null; 
     45} 
     46 
    3147function get_first_text(node) 
    3248{ 
     
    4258function get_filename(tr) 
    4359{ 
    44     return get_first_text(get_nth_child(tr, 0, "th")); 
     60    return get_first_text(get_nth_child(tr, "th", 0)); 
    4561} 
    4662 
    4763function get_nroflines(tr) 
    4864{ 
    49     return parseInt(get_first_text(get_nth_child(tr, 0, "td")), 10); 
     65    return parseInt(get_first_text(get_nth_child(tr, "td", 0)), 10); 
    5066} 
    5167 
    5268function get_coverablelines(tr) 
    5369{ 
    54     return parseInt(get_first_text(get_nth_child(tr, 1, "td")), 10); 
     70    return parseInt(get_first_text(get_nth_child(tr, "td", 1)), 10); 
    5571} 
    5672 
    5773function get_coveredlines(tr) 
    5874{ 
    59     return parseInt(get_first_text(get_nth_child(tr, 2, "td")), 10); 
     75    return parseInt(get_first_text(get_nth_child(tr, "td", 2)), 10); 
    6076} 
    6177 
    6278function get_coverage(tr) 
    6379{ 
    64     var content = get_first_text(get_nth_child(tr, 3, "td")); 
     80    var content = get_first_text(get_nth_child(tr, "td", 3)); 
    6581    if (content == "n/a") 
    6682        return -1.0; 
     
    103119     
    104120    button = document.createElement("span"); 
    105     button.innerHTML = "1-9"; 
    106     if (document.all) 
    107         button.onclick = function(){return files_sort(files_cmpbynroflines_asc);} 
    108     else 
    109         button.setAttribute("onclick", "return files_sort(files_cmpbynroflines_asc);"); 
     121    button.innerHTML = "123"; 
     122    if (document.all) 
     123        button.onclick = function(){return files_sort(files_cmpbynroflines_asc, "nroflines");} 
     124    else 
     125        button.setAttribute("onclick", "return files_sort(files_cmpbynroflines_asc, 'nroflines');"); 
    110126    document.getElementById("nroflines").appendChild(button); 
    111127 
    112128    button = document.createElement("span"); 
    113     button.innerHTML = "9-1"; 
    114     if (document.all) 
    115         button.onclick = function(){return files_sort(files_cmpbynroflines_desc);} 
    116     else 
    117         button.setAttribute("onclick", "return files_sort(files_cmpbynroflines_desc);"); 
     129    button.innerHTML = "321"; 
     130    if (document.all) 
     131        button.onclick = function(){return files_sort(files_cmpbynroflines_desc, "nroflines");} 
     132    else 
     133        button.setAttribute("onclick", "return files_sort(files_cmpbynroflines_desc, 'nroflines');"); 
    118134    document.getElementById("nroflines").appendChild(button); 
    119135     
    120136    button = document.createElement("span"); 
    121     button.innerHTML = "1-9"; 
    122     if (document.all) 
    123         button.onclick = function(){return files_sort(files_cmpbycoverablelines_asc);} 
    124     else 
    125         button.setAttribute("onclick", "return files_sort(files_cmpbycoverablelines_asc);"); 
     137    button.innerHTML = "123"; 
     138    if (document.all) 
     139        button.onclick = function(){return files_sort(files_cmpbycoverablelines_asc, "coverablelines");} 
     140    else 
     141        button.setAttribute("onclick", "return files_sort(files_cmpbycoverablelines_asc, 'coverablelines');"); 
    126142    document.getElementById("coverablelines").appendChild(button); 
    127143 
    128144    button = document.createElement("span"); 
    129     button.innerHTML = "9-1"; 
    130     if (document.all) 
    131         button.onclick = function(){return files_sort(files_cmpbycoverablelines_desc);} 
    132     else 
    133         button.setAttribute("onclick", "return files_sort(files_cmpbycoverablelines_desc);"); 
     145    button.innerHTML = "321"; 
     146    if (document.all) 
     147        button.onclick = function(){return files_sort(files_cmpbycoverablelines_desc, "coverablelines");} 
     148    else 
     149        button.setAttribute("onclick", "return files_sort(files_cmpbycoverablelines_desc, 'coverablelines');"); 
    134150    document.getElementById("coverablelines").appendChild(button); 
    135151     
    136152    button = document.createElement("span"); 
    137     button.innerHTML = "1-9"; 
    138     if (document.all) 
    139         button.onclick = function(){return files_sort(files_cmpbycoveredlines_asc);} 
    140     else 
    141         button.setAttribute("onclick", "return files_sort(files_cmpbycoveredlines_asc);"); 
     153    button.innerHTML = "123"; 
     154    if (document.all) 
     155        button.onclick = function(){return files_sort(files_cmpbycoveredlines_asc, "coveredlines");} 
     156    else 
     157        button.setAttribute("onclick", "return files_sort(files_cmpbycoveredlines_asc, 'coveredlines');"); 
    142158    document.getElementById("coveredlines").appendChild(button); 
    143159 
    144160    button = document.createElement("span"); 
    145     button.innerHTML = "9-1"; 
    146     if (document.all) 
    147         button.onclick = function(){return files_sort(files_cmpbycoveredlines_desc);} 
    148     else 
    149         button.setAttribute("onclick", "return files_sort(files_cmpbycoveredlines_desc);"); 
     161    button.innerHTML = "321"; 
     162    if (document.all) 
     163        button.onclick = function(){return files_sort(files_cmpbycoveredlines_desc, "coveredlines");} 
     164    else 
     165        button.setAttribute("onclick", "return files_sort(files_cmpbycoveredlines_desc, 'coveredlines');"); 
    150166    document.getElementById("coveredlines").appendChild(button); 
    151167 
    152168    button = document.createElement("span"); 
    153     button.innerHTML = "1-9"; 
    154     if (document.all) 
    155         button.onclick = function(){return files_sort(files_cmpbycoverage_asc);} 
    156     else 
    157         button.setAttribute("onclick", "return files_sort(files_cmpbycoverage_asc);"); 
     169    button.innerHTML = "123"; 
     170    if (document.all) 
     171        button.onclick = function(){return files_sort(files_cmpbycoverage_asc, "coverage");} 
     172    else 
     173        button.setAttribute("onclick", "return files_sort(files_cmpbycoverage_asc, 'coverage');"); 
    158174    document.getElementById("coverage").appendChild(button); 
    159175 
    160176    button = document.createElement("span"); 
    161     button.innerHTML = "9-1"; 
    162     if (document.all) 
    163         button.onclick = function(){return files_sort(files_cmpbycoverage_desc);} 
    164     else 
    165         button.setAttribute("onclick", "return files_sort(files_cmpbycoverage_desc);"); 
     177    button.innerHTML = "321"; 
     178    if (document.all) 
     179        button.onclick = function(){return files_sort(files_cmpbycoverage_desc, "coverage");} 
     180    else 
     181        button.setAttribute("onclick", "return files_sort(files_cmpbycoverage_desc, 'coverage');"); 
    166182    document.getElementById("coverage").appendChild(button); 
    167183} 
    168184 
    169 function files_sort(sorter) 
    170 { 
    171     document.body.setAttribute("class", "wait"); 
     185function files_sort(sorter, id) 
     186{ 
     187    document.body.className = "wait"; 
    172188 
    173189    function dosort() 
     
    179195            tbody.appendChild(rows[i]); 
    180196     
    181         document.body.setAttribute("class", "nowait"); 
     197        document.body.className = "nowait"; 
    182198    } 
    183199    window.setTimeout(dosort, 0.01); 
  • src/pycoco/xmlns.py

    r28 r29  
    121121        if coverablelines: 
    122122            coverage = "%.02f%%" % (100.*coveredlines/coverablelines) 
    123             coverageclass = "int" 
     123            coverageclass = "coverage" 
    124124            distribution = xsc.Frag() 
    125125            totalwidth = 0 
     
    138138        else: 
    139139            coverage = "n/a" 
    140             coverageclass = "int disable" 
     140            coverageclass = "coverage disable" 
    141141            distribution = htmlspecials.pixel(width=distsize[0], height=distsize[1], style="background-color: #000;") 
    142142 
     
    151151            html.td( 
    152152                lines, 
    153                 class_="int", 
     153                class_="noroflines", 
    154154            ), 
    155155            html.td( 
    156156                coverablelines, 
    157                 class_="int", 
     157                class_="coverablelines", 
    158158            ), 
    159159            html.td( 
    160160                coveredlines, 
    161                 class_="int", 
     161                class_="coveredlines", 
    162162            ), 
    163163            html.td(