Add the ability to add a close button to popups via a final param to the
constructor of a popup. git-svn-id: http://svn.openlayers.org/trunk/openlayers@1704 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
This commit is contained in:
@@ -37,7 +37,8 @@
|
||||
popup = new OpenLayers.Popup("chicken",
|
||||
new OpenLayers.LonLat(5,40),
|
||||
new OpenLayers.Size(200,200),
|
||||
"example popup");
|
||||
"example popup",
|
||||
true);
|
||||
|
||||
map.addPopup(popup);
|
||||
}
|
||||
|
||||
BIN
img/close.gif
Normal file
BIN
img/close.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.1 KiB |
@@ -60,8 +60,9 @@ OpenLayers.Popup.prototype = {
|
||||
* @param {OpenLayers.LonLat} lonlat
|
||||
* @param {OpenLayers.Size} size
|
||||
* @param {String} contentHTML
|
||||
* @param {Boolean} closeBox
|
||||
*/
|
||||
initialize:function(id, lonlat, size, contentHTML) {
|
||||
initialize:function(id, lonlat, size, contentHTML, closeBox) {
|
||||
if (id == null) {
|
||||
id = OpenLayers.Util.createUniqueID(this.CLASS_NAME + "_");
|
||||
}
|
||||
@@ -90,6 +91,23 @@ OpenLayers.Popup.prototype = {
|
||||
this.contentDiv.className = 'olPopupContent';
|
||||
this.div.appendChild(this.contentDiv);
|
||||
|
||||
if (closeBox == true) {
|
||||
// close icon
|
||||
var closeSize = new OpenLayers.Size(17,17);
|
||||
var img = OpenLayers.Util.getImagesLocation() + "close.gif";
|
||||
var closeImg = OpenLayers.Util.createAlphaImageDiv(this.id + "_close",
|
||||
null,
|
||||
closeSize,
|
||||
img);
|
||||
closeImg.style.right = this.padding + "px";
|
||||
closeImg.style.top = this.padding + "px";
|
||||
this.div.appendChild(closeImg);
|
||||
|
||||
var closeEvents = new OpenLayers.Events(this, closeImg);
|
||||
closeEvents.register("mousedown", this, this.hide);
|
||||
|
||||
}
|
||||
|
||||
this.registerEvents();
|
||||
},
|
||||
|
||||
|
||||
@@ -31,9 +31,10 @@ OpenLayers.Popup.Anchored.prototype =
|
||||
* - 'size' (OpenLayers.Size) and
|
||||
* - 'offset' (OpenLayers.Pixel)
|
||||
* (this is generally an OpenLayers.Icon)
|
||||
* @param {Boolean} closeBox
|
||||
*/
|
||||
initialize:function(id, lonlat, size, contentHTML, anchor) {
|
||||
var newArguments = new Array(id, lonlat, size, contentHTML);
|
||||
initialize:function(id, lonlat, size, contentHTML, anchor, closeBox) {
|
||||
var newArguments = new Array(id, lonlat, size, contentHTML, closeBox);
|
||||
OpenLayers.Popup.prototype.initialize.apply(this, newArguments);
|
||||
|
||||
this.anchor = (anchor != null) ? anchor
|
||||
|
||||
@@ -28,8 +28,9 @@ OpenLayers.Popup.AnchoredBubble.prototype =
|
||||
* - 'size' (OpenLayers.Size) and
|
||||
* - 'offset' (OpenLayers.Pixel)
|
||||
* (this is generally an OpenLayers.Icon)
|
||||
* @param {Boolean} closeBox
|
||||
*/
|
||||
initialize:function(id, lonlat, size, contentHTML, anchor) {
|
||||
initialize:function(id, lonlat, size, contentHTML, anchor, closeBox) {
|
||||
OpenLayers.Popup.Anchored.prototype.initialize.apply(this, arguments);
|
||||
},
|
||||
|
||||
|
||||
Reference in New Issue
Block a user