<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: ArcGIS for JavaScript: customize pan using mouse middle button in ArcGIS JavaScript Maps SDK Questions</title>
    <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/arcgis-for-javascript-customize-pan-using-mouse/m-p/390779#M36067</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks for the reply. I have tried this but it does not work for stopping default PAN. Actually, I have tried to use preventDefault and stopPropagation methods in "mouse-down", "mouse-drag", "mouse-drag-start" events, but none seems to work.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am thinking that Esri has implemented default PAN in a seperated mechanism, because there are actually &lt;A href="https://developers.arcgis.com/javascript/3/jsapi/map-amd.html"&gt;"PAN" events&lt;/A&gt;, which however can not be stopped unless you use map.disablePan().&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 06 Dec 2016 01:01:02 GMT</pubDate>
    <dc:creator>JackyCai</dc:creator>
    <dc:date>2016-12-06T01:01:02Z</dc:date>
    <item>
      <title>ArcGIS for JavaScript: customize pan using mouse middle button</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/arcgis-for-javascript-customize-pan-using-mouse/m-p/390777#M36065</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi there,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am trying to disable left mouse button click event while drawing on the map, at the same time allow users to pan using middle mouse button like in ArcMap while editing. I am looking for method like "panTo" which is mentioned in Esri document&amp;nbsp;&lt;A href="https://developers.arcgis.com/javascript/3/jshelp/intro_navigation.html"&gt;Map navigation&lt;/A&gt;, but could not be found in map or navigation classes. I find this method in&amp;nbsp;&lt;A href="https://developers.arcgis.com/javascript/3/jsapi/mapwidgetproxy-amd.html"&gt;MapWidgetProxy&lt;/A&gt;, but could not find example that shows how to use it.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would really appreciate it if anyone would provide suggestions, cheers!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Jackie&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 05 Dec 2016 06:09:40 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/arcgis-for-javascript-customize-pan-using-mouse/m-p/390777#M36065</guid>
      <dc:creator>JackyCai</dc:creator>
      <dc:date>2016-12-05T06:09:40Z</dc:date>
    </item>
    <item>
      <title>Re: ArcGIS for JavaScript: customize pan using mouse middle button</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/arcgis-for-javascript-customize-pan-using-mouse/m-p/390778#M36066</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;To determine which mouse button is clicked, you can use the "mouse-down" event listener e.g.&amp;nbsp;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;map&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;on&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;"mouse-down"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;function&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;evt&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp; console&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;log&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;evt&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;which&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="comment token"&gt;// will return which button was clicked&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;evt&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;which &lt;SPAN class="operator token"&gt;==&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;1&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; console&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;log&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;"left button"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp; &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;else&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;evt&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;which &lt;SPAN class="operator token"&gt;==&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;2&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; console&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;log&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;"middle button"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp; &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;else&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;evt&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;which &lt;SPAN class="operator token"&gt;==&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;3&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; console&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;log&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;"right button"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp; &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
&lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;Make use of the evt.preventDefault() function to prevent any default button click behaviour during your edit session.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 17:55:14 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/arcgis-for-javascript-customize-pan-using-mouse/m-p/390778#M36066</guid>
      <dc:creator>FC_Basson</dc:creator>
      <dc:date>2021-12-11T17:55:14Z</dc:date>
    </item>
    <item>
      <title>Re: ArcGIS for JavaScript: customize pan using mouse middle button</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/arcgis-for-javascript-customize-pan-using-mouse/m-p/390779#M36067</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks for the reply. I have tried this but it does not work for stopping default PAN. Actually, I have tried to use preventDefault and stopPropagation methods in "mouse-down", "mouse-drag", "mouse-drag-start" events, but none seems to work.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am thinking that Esri has implemented default PAN in a seperated mechanism, because there are actually &lt;A href="https://developers.arcgis.com/javascript/3/jsapi/map-amd.html"&gt;"PAN" events&lt;/A&gt;, which however can not be stopped unless you use map.disablePan().&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Dec 2016 01:01:02 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/arcgis-for-javascript-customize-pan-using-mouse/m-p/390779#M36067</guid>
      <dc:creator>JackyCai</dc:creator>
      <dc:date>2016-12-06T01:01:02Z</dc:date>
    </item>
    <item>
      <title>Re: ArcGIS for JavaScript: customize pan using mouse middle button</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/arcgis-for-javascript-customize-pan-using-mouse/m-p/390780#M36068</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I found a solution but you have to use private methods in the API. There is a __pan function (be aware of the double underscores) you can use when handling mouse-drag event, and also you need to take care of some stuff in onPanStart (otherwise the popups' position would be wrong) as well as onPanEnd (to actually apply the drag).&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It is not good to use private methods and properties directly because it might change without notifications from Esri, but this is the only solution I found so far.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 19 Dec 2016 02:49:10 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/arcgis-for-javascript-customize-pan-using-mouse/m-p/390780#M36068</guid>
      <dc:creator>JackyCai</dc:creator>
      <dc:date>2016-12-19T02:49:10Z</dc:date>
    </item>
  </channel>
</rss>

