Chris,<br><br>I am not sure if the rest of your code handles this situation, but when I use the 'STICKY' option with overLib and pan the map, the opened tooltip stays in it's position while the marker and map move. <br><br>
I know there is a way to change the location of the tooltip, which is probably best changed upon an event action inside kaMap.<br><br>any thoughts?<br><br>-Sepehr<br><br><div><span class="gmail_quote">On 3/5/06, <b class="gmail_sendername">
Stephen Woodbridge</b> &lt;<a href="mailto:woodbri@swoodbridge.com">woodbri@swoodbridge.com</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Chris,<br><br>I'm not sure how to do this or if it is possible, but it would seem like<br>you would want to have each marker destroy itself if you panned outside<br>the extended extent or changed zoom scale. Otherwise you will have a
<br>object leak and continue to create these markers as long as the user has<br>the page open.<br><br>One way to do it might be to make a structure the contains all the<br>objects that your create and a variable the describes the valid context
<br>that were created for. Then before you add new markers for an context<br>that does not match the save context, you can destroy all the old<br>markers before adding the new markers.<br><br>Just an idea.<br>&nbsp;&nbsp; -Steve W.
<br><br>Base Bloc wrote:<br>&gt; Hi Guys,<br>&gt;<br>&gt;<br>&gt;<br>&gt; I'm still plugging away to get some workable functions together to draw<br>&gt; markers with tool-tips and it's hard work as I'm experienced with PHP
<br>&gt; but not so hot on JavaScript and DOM so am making all the usual mistakes<br>&gt; but getting there slowly. I now have a system in place that at a curtain<br>&gt; scale places markers within an extended extent of the visible map tiles
<br>&gt; using HttpRequest. All is working fine and I currently have the system<br>&gt; getting markers from a database to place markers on the map at the<br>&gt; required scale (1:300000), then adding more markers as the map is panned.
<br>&gt;<br>&gt;<br>&gt;<br>&gt; The problem I'm encountering now is that although the function is<br>&gt; working correctly as in it won't add markers+tool-tips until the map is<br>&gt; zoomed to 1:300000 when the map is zoomed back out above 1:300000 the
<br>&gt; markers previously called all remain on screen and as there are over<br>&gt; 7000 points you can imagine what this looks like at 1:4000000.<br>&gt;<br>&gt;<br>&gt;<br>&gt; Is there a simple way to clear all of the markers created by
<br>&gt; addObjectGeo when the map is zoomed out past a curtain scale or better<br>&gt; yet add an event related to myKaMap.getCurrentScale() so they are only<br>&gt; displayed when the scale in greater than X?<br>&gt;<br>
&gt;<br>&gt;<br>&gt; Here are the functions I'm using at present:<br>&gt;<br>&gt;<br>&gt;<br>&gt; //creates separate image for each marker<br>&gt;<br>&gt; function create_marker (img_id, var_1, lat, lon)<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {
<br>&gt;<br>&gt;<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; document[img_id] = document.createElement( 'img' );<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; document[img_id].src = 'images/kamap.gif';<br>&gt;<br>&gt;<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var bname = navigator.appName
;<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (bname == &quot;Microsoft Internet Explorer&quot;)<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; document[img_id].attachEvent(&quot;onmouseover&quot;,tool_tip)
<br>&gt;<br>&gt;<br>&gt; document[img_id].attachEvent(&quot;onmouseout&quot;,tool_tip_out)<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; document[img_id].attachEvent(&quot;onclick&quot;,page_link)<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&gt;<br>&gt;<br>&gt; document[img_id].addEventListener(&quot;mouseover&quot;,tool_tip,false)<br>&gt;<br>&gt;<br>&gt; document[img_id].addEventListener(&quot;mouseout&quot;,tool_tip_out,false)
<br>&gt;<br>&gt;<br>&gt; document[img_id].addEventListener(&quot;click&quot;,page_link,false)<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&gt;<br>&gt;<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //Sends content and format options
<br>&gt; to tool-tip<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; function tool_tip(){<br>&gt;<br>&gt;<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var test_var = var_1;<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var text = &quot;My name is &quot;
<br>&gt; +test_var+ &quot;, and I'm am now understanding JavaScripts&quot;;<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; overlib(text, STICKY,<br>&gt; MOUSEOFF, CAPTION, 'info')<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }
<br>&gt;<br>&gt;<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; myKaMap.addObjectGeo( myCanvas, lat, lon, document[img_id] );<br>&gt;<br>&gt;<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&gt;<br>&gt;<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; function drawMarkers(){<br>&gt;<br>
&gt;&nbsp;&nbsp; Big_Extents = myKaMap.getGeoExpandedExtents();<br>&gt;<br>&gt;&nbsp;&nbsp; myCanvas = myKaMap.createDrawingCanvas( 5000 );<br>&gt;<br>&gt;<br>&gt;<br>&gt;&nbsp;&nbsp; //draw Markers within Big_Extents using kaXMLOverlay or just<br>&gt; addObjectGeo()
<br>&gt;<br>&gt;<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var scale = myKaMap.getCurrentScale();<br>&gt;<br>&gt;<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (scale &lt;= 200000)<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&gt;<br>&gt;<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //this is where the HttpRequest would normally go, but I
<br>&gt; have placed a couple of sample markers to make the script more clear<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; create_marker('C02573', 'Box', 511275, 1363860);<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; create_marker('C02574', 'Pipe', 515736, 1364260);
<br>&gt;<br>&gt;<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&gt;<br>&gt;<br>&gt;<br>&gt; }<br>&gt;<br>&gt;<br>&gt;<br>&gt; var scale = myKaMap.getCurrentScale();<br>&gt;<br>&gt;<br>&gt;<br>&gt;<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; myKaMap.registerForEvent
( KAMAP_SCALE_CHANGED, null,<br>&gt; drawMarkers );<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; myKaMap.registerForEvent( KAMAP_EXTENTS_CHANGED, null,<br>&gt; maybeRedraw );<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; myKaMap.registerForEvent( KAMAP_MAP_INITIALIZED, null,
<br>&gt; drawMarkers );<br>&gt;<br>&gt;<br>&gt;<br>&gt; }<br>&gt;<br>&gt;<br>&gt;<br>&gt; Sorry there are a few calls to functions there which I have not added<br>&gt; above, I didn't want to do a 500 line cut and paste, once I have it
<br>&gt; working properly I will post the full code and related functions.<br>&gt;<br>&gt;<br>&gt;<br>&gt; Any suggestions on a fix to this problem would be appreciated.<br>&gt;<br>&gt;<br>&gt;<br>&gt; Thanks,<br>&gt;<br>
&gt;<br>&gt;<br>&gt; Chris<br>&gt;<br>&gt;<br>&gt;<br>&gt; ~~~~~~~~~~~~~~~~~~~~~~~~~~~<br>&gt;<br>&gt; Christopher Brown<br>&gt;<br>&gt; Head of Internet Development<br>&gt;<br>&gt; Base Bloc Cambodia<br>&gt;<br>&gt; #33, 123, Phnom Penh, Cambodia.
<br>&gt;<br>&gt; P.O. Box 2086<br>&gt;<br>&gt; <a href="http://www.basebloc.com">www.basebloc.com</a><br>&gt;<br>&gt; Tel (+885) 12 315 302<br>&gt;<br>&gt;<br>&gt;<br>&gt;<br>&gt; ------------------------------------------------------------------------
<br>&gt;<br>&gt; _______________________________________________<br>&gt; ka-Map-users mailing list<br>&gt; <a href="mailto:ka-Map-users@lists.maptools.org">ka-Map-users@lists.maptools.org</a><br>&gt; <a href="http://lists.maptools.org/mailman/listinfo/ka-map-users">
http://lists.maptools.org/mailman/listinfo/ka-map-users</a><br><br>_______________________________________________<br>ka-Map-users mailing list<br><a href="mailto:ka-Map-users@lists.maptools.org">ka-Map-users@lists.maptools.org
</a><br><a href="http://lists.maptools.org/mailman/listinfo/ka-map-users">http://lists.maptools.org/mailman/listinfo/ka-map-users</a><br></blockquote></div><br><br clear="all"><br>-- <br><br><br><br>..:: Sepehr Sadeghi&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;::..
<br>..:: <a href="mailto:sadegs@alum.rpi.edu">sadegs@alum.rpi.edu</a>&nbsp;&nbsp;::..<br>..:: 603-205-4402&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;::..