OpenLayers OpenLayers

Changeset 4225

Show
Ignore:
Timestamp:
09/11/07 21:58:27 (1 year ago)
Author:
crschmidt
Message:

Adding Scroll Bars in TextFile Popup Windows via Layer.Text layer. (Closes #834)

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/openlayers/lib/OpenLayers/Feature.js

    r4134 r4225  
    186186                                             anchor,  
    187187                                             closeBox);  
     188             
     189            if (this.data.overflow != null) { 
     190                this.popup.contentDiv.style.overflow = this.data.overflow; 
     191            }     
     192             
    188193            this.popup.feature = this; 
    189194        }         
  • trunk/openlayers/lib/OpenLayers/Layer/Text.js

    r3984 r4225  
    8585                    var location = new OpenLayers.LonLat(0,0); 
    8686                    var title; var url; 
    87                     var icon, iconSize, iconOffset
     87                    var icon, iconSize, iconOffset, overflow
    8888                    var set = false; 
    8989                    for (var valIndex = 0; valIndex < vals.length; valIndex++) { 
     
    117117                            } else if (columns[valIndex] == 'description') { 
    118118                                description = vals[valIndex]; 
    119                             } 
     119                            } else if (columns[valIndex] == 'overflow') { 
     120                                overflow = vals[valIndex]; 
     121                            }     
    120122                        } 
    121123                    } 
     
    140142                          data['popupContentHTML'] = '<h2>'+title+'</h2><p>'+description+'</p>'; 
    141143                      } 
     144                       
     145                      data['overflow'] = overflow || "auto";  
     146                       
    142147                      var feature = new OpenLayers.Feature(this, location, data); 
    143148                      this.features.push(feature); 
  • trunk/openlayers/tests/Layer/test_Text.html

    r4059 r4225  
    99    var datafile  = "./data_Layer_Text_textfile.txt"; 
    1010    var datafile2 = "./data_Layer_Text_textfile_2.txt"; 
     11    var datafile_overflow = "./data_Layer_Text_textfile_overflow.txt"; 
    1112 
    1213    // if this test is running in IE, different rules apply 
     
    1415        datafile = "." + datafile; 
    1516        datafile2 = "." + datafile2; 
     17        datafile_overflow = "." + datafile_overflow; 
    1618    } 
    1719 
     
    5759    } 
    5860    function test_03_Layer_Text_events (t) { 
    59         t.plan( 4 );     
     61        t.plan( 5 );     
    6062        layer = new OpenLayers.Layer.Text('Test Layer', { location: datafile2 }); 
    6163        var map = new OpenLayers.Map('map'); 
     
    7476          layer.markers[1].events.triggerEvent('click', event); 
    7577          t.eq(map.popups.length, 1, "1st popup gone, 2nd Popup opened correctly"); 
     78          t.eq(map.popups[0].contentDiv.style.overflow,"auto", "default Popup overflow correct"); 
     79        }); 
     80    } 
     81    function test_03_Layer_Text_overflow (t) { 
     82        t.plan( 4 );     
     83        layer = new OpenLayers.Layer.Text('Test Layer', { location: datafile_overflow }); 
     84        var map = new OpenLayers.Map('map'); 
     85        var baseLayer = new OpenLayers.Layer.WMS("Test Layer",  
     86            "http://octo.metacarta.com/cgi-bin/mapserv?", 
     87            {map: "/mapdata/vmap_wms.map", layers: "basic"}); 
     88        map.addLayer(baseLayer); 
     89        map.addLayer(layer); 
     90        map.setCenter(new OpenLayers.LonLat(0,0),0); 
     91        var event = {}; 
     92        t.delay_call( 1, function() {   
     93          layer.markers[0].events.triggerEvent('click', event); 
     94          t.eq(map.popups.length, 1, "Popup opened correctly"); 
     95          t.eq(map.popups[0].contentDiv.style.overflow,"auto", "Popup overflow read from file"); 
     96          layer.markers[1].events.triggerEvent('click', event); 
     97          t.eq(map.popups.length, 1, "1st popup gone, 2nd Popup opened correctly"); 
     98          t.eq(map.popups[0].contentDiv.style.overflow,"hidden", "Popup overflow read from file"); 
    7699        }); 
    77100    } 
  • trunk/openlayers/tests/test_Feature.html

    r4134 r4225  
    2929    } 
    3030     
     31    function test_02_Feature_createPopup (t) { 
     32        t.plan(1); 
     33        var layer = {}; 
     34        var lonlat = new OpenLayers.LonLat(2,1); 
     35        var iconURL = 'http://boston.openguides.org/features/ORANGE.png'; 
     36        var iconSize = new OpenLayers.Size(12, 17); 
     37        var data =  { iconURL: iconURL, 
     38                      iconSize: iconSize, 
     39                      'overflow':'auto' 
     40                    }; 
     41         
     42        feature = new OpenLayers.Feature(layer, lonlat, data); 
     43        popup = feature.createPopup();  
     44        t.eq(popup.contentDiv.style.overflow, "auto", 'overflow on popup is correct'); 
     45    }     
    3146    function test_02_Feature_createMarker (t) { 
    3247        t.plan(1);