| 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
 | | /** |  |  * ext-panning.js |  |  * |  |  * @license MIT |  |  * |  |  * @copyright 2013 Luis Aguirre |  |  * |  |  */ |  | /* |  |   This is a very basic SVG-Edit extension to let tablet/mobile devices pan without problem |  | */ |  | export default { |  |   name: 'panning', |  |   async init ({importLocale}) { |  |     const strings = await importLocale(); |  |     const svgEditor = this; |  |     const svgCanvas = svgEditor.canvas; |  |     const buttons = [{ |  |       id: 'ext-panning', |  |       icon: svgEditor.curConfig.extIconsPath + 'panning.png', |  |       type: 'mode', |  |       events: { |  |         click () { |  |           svgCanvas.setMode('ext-panning'); |  |         } |  |       } |  |     }]; |  |     return { |  |       name: strings.name, |  |       svgicons: svgEditor.curConfig.extIconsPath + 'ext-panning.xml', |  |       buttons: strings.buttons.map((button, i) => { |  |         return Object.assign(buttons[i], button); |  |       }), |  |       mouseDown () { |  |         if (svgCanvas.getMode() === 'ext-panning') { |  |           svgEditor.setPanning(true); |  |           return {started: true}; |  |         } |  |       }, |  |       mouseUp () { |  |         if (svgCanvas.getMode() === 'ext-panning') { |  |           svgEditor.setPanning(false); |  |           return { |  |             keep: false, |  |             element: null |  |           }; |  |         } |  |       } |  |     }; |  |   } |  | }; | 
 |