<div>Hello,<br><br>first thanks for your answer i began to despair.<br><br>I
already have implemented the ToolProvider interface and her 4 methods.
Its works but when i click on the tool it would not be selected. but if
i remove &quot;mainmap.{$tool-&gt;id}('map');&quot; from toolbar.tpl it could be
selected but nothing occurs (off course).do you think this could be
because i don't have write the javascript methods yet? could you give
me more details on the way to implement the javascript methods? I'm a
little bit confused.
<br><br>thanks in advance<br></div><span class="sg"><br>Jonathan</span><br><br><br><div><span class="gmail_quote"></span>Pierre Giraud wrote:<br><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hello,<br><br>I think I know the functionnalities you are about to add to the routing<br>plugin. We developped some similar tools for one of our customers.<br><br>The first thing you need to know is that there is a generic way to add
<br>tools to the toolbar. You cannot get what you want with simply adding<br>code in the templates.<br><br>This generic way uses the ToolProvider interface.<br>So, your php class that extends ClientRouting needs to implement the
<br>ToolProvider interface.<br>Then, you'll have to define 4 methods (handleMainmapTool,<br>handleKeymapTool, handleApplicationTool, and getTools). The last one<br>will probably look something like :<br><br>&nbsp;&nbsp;&nbsp;&nbsp;const TOOL_ROUTING_FROM = 'routing_from';
<br>&nbsp;&nbsp;&nbsp;&nbsp;const TOOL_ROUTING_TO = 'routing_to';<br><br>&nbsp;&nbsp;&nbsp;&nbsp;/**<br>&nbsp;&nbsp;&nbsp;&nbsp; * Returns the routing tools : RoutingFrom, RoutingTo<br>&nbsp;&nbsp;&nbsp;&nbsp; * @see ToolProvider::getTools()<br>&nbsp;&nbsp;&nbsp;&nbsp; * @return array of ToolDescription<br>&nbsp;&nbsp;&nbsp;&nbsp; */<br>&nbsp;&nbsp;&nbsp;&nbsp;public function getTools() {
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$toolsArray = array();<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$toolsArray[] = new ToolDescription(self::TOOL_ROUTING_FROM,<br>true, 101);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$toolsArray[] = new ToolDescription(self::TOOL_ROUTING_TO, true,<br>102);<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return $toolsArray;
<br>&nbsp;&nbsp;&nbsp;&nbsp;}<br><br>That done, you should be able to see the new tools in the toolbar. To<br>get images within those tools, you need &quot;routing_from.gif&quot; and<br>&quot;routing_to.gif&quot; files in the correct directory
<br>(plugins/routing/htdocs/gfx/).<br><br>The next step is to write the javascript methods for the tools. Edit a<br>new javascript file &quot;plugins/routing/htdocs/js/dhtmlRouting.js&quot; (loaded<br>in your templates) with the needed functions.
<br><br>Map.prototype.routing_from = function(aDisplay) {<br>...<br>}<br><br>Hope this helps.<br>Don't hesitate to ask if this isn't clear or if you are not able to go<br>further.<br><br>Regards<br><br>Pierre<br><br><br><br>
Jonathan Gillot wrote:<br><br>&gt; hello,<br>&gt;<br>&gt; i'm writting a plugin to find the path between 2 point clicked on the<br>&gt; map. So i must add a new tool to the toolbar what is the good method<br>&gt; to do this?
<br>&gt;<br>&gt;------------------------------------------------------------------------<br></blockquote></div><br>