react-native-map4d-map-dtqg 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (183) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +88 -41
  3. package/android/.gradle/8.9/checksums/checksums.lock +0 -0
  4. package/android/.gradle/8.9/checksums/md5-checksums.bin +0 -0
  5. package/android/.gradle/8.9/checksums/sha1-checksums.bin +0 -0
  6. package/android/.gradle/8.9/dependencies-accessors/gc.properties +0 -0
  7. package/android/.gradle/8.9/fileChanges/last-build.bin +0 -0
  8. package/android/.gradle/8.9/fileHashes/fileHashes.lock +0 -0
  9. package/android/.gradle/8.9/gc.properties +0 -0
  10. package/android/.gradle/9.0-milestone-1/checksums/checksums.lock +0 -0
  11. package/android/.gradle/9.0-milestone-1/checksums/md5-checksums.bin +0 -0
  12. package/android/.gradle/9.0-milestone-1/checksums/sha1-checksums.bin +0 -0
  13. package/android/.gradle/9.0-milestone-1/fileChanges/last-build.bin +0 -0
  14. package/android/.gradle/9.0-milestone-1/fileHashes/fileHashes.lock +0 -0
  15. package/android/.gradle/9.0-milestone-1/gc.properties +0 -0
  16. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  17. package/android/.gradle/buildOutputCleanup/cache.properties +2 -0
  18. package/android/.gradle/config.properties +2 -0
  19. package/android/.gradle/vcs-1/gc.properties +0 -0
  20. package/android/.idea/AndroidProjectSystem.xml +6 -0
  21. package/android/.idea/caches/deviceStreaming.xml +1570 -0
  22. package/android/.idea/copilot.data.migration.ask2agent.xml +6 -0
  23. package/android/.idea/gradle.xml +12 -0
  24. package/android/.idea/migrations.xml +10 -0
  25. package/android/.idea/misc.xml +10 -0
  26. package/android/.idea/runConfigurations.xml +17 -0
  27. package/android/.idea/vcs.xml +6 -0
  28. package/android/build.gradle +60 -60
  29. package/android/local.properties +8 -0
  30. package/android/src/main/AndroidManifest.xml +4 -4
  31. package/android/src/main/java/com/reactnativemap4dmap/ImageUtils.java +87 -87
  32. package/android/src/main/java/com/reactnativemap4dmap/Map4dMapModule.java +298 -298
  33. package/android/src/main/java/com/reactnativemap4dmap/Map4dMapPackage.java +35 -35
  34. package/android/src/main/java/com/reactnativemap4dmap/Map4dMapViewManager.java +31 -31
  35. package/android/src/main/java/com/reactnativemap4dmap/RMFBuilding.java +167 -167
  36. package/android/src/main/java/com/reactnativemap4dmap/RMFBuildingManager.java +121 -121
  37. package/android/src/main/java/com/reactnativemap4dmap/RMFCircle.java +105 -105
  38. package/android/src/main/java/com/reactnativemap4dmap/RMFCircleManager.java +121 -121
  39. package/android/src/main/java/com/reactnativemap4dmap/RMFDirectionsRenderer.java +502 -502
  40. package/android/src/main/java/com/reactnativemap4dmap/RMFDirectionsRendererManager.java +143 -143
  41. package/android/src/main/java/com/reactnativemap4dmap/RMFFeature.java +17 -17
  42. package/android/src/main/java/com/reactnativemap4dmap/RMFMapView.java +1172 -1172
  43. package/android/src/main/java/com/reactnativemap4dmap/RMFMapViewManager.java +226 -226
  44. package/android/src/main/java/com/reactnativemap4dmap/RMFMarker.java +412 -412
  45. package/android/src/main/java/com/reactnativemap4dmap/RMFMarkerManager.java +211 -211
  46. package/android/src/main/java/com/reactnativemap4dmap/RMFPOI.java +222 -222
  47. package/android/src/main/java/com/reactnativemap4dmap/RMFPOIManager.java +119 -119
  48. package/android/src/main/java/com/reactnativemap4dmap/RMFPolygon.java +172 -172
  49. package/android/src/main/java/com/reactnativemap4dmap/RMFPolygonManager.java +147 -147
  50. package/android/src/main/java/com/reactnativemap4dmap/RMFPolyline.java +146 -146
  51. package/android/src/main/java/com/reactnativemap4dmap/RMFPolylineManager.java +137 -137
  52. package/android/src/main/java/com/reactnativemap4dmap/RMFTileOverlay.java +95 -95
  53. package/android/src/main/java/com/reactnativemap4dmap/RMFTileOverlayManager.java +64 -64
  54. package/android/src/main/java/com/reactnativemap4dmap/SizeReportingShadowNode.java +31 -31
  55. package/android/src/main/java/com/reactnativemap4dmap/ViewAttacherGroup.java +31 -31
  56. package/android/src/main/java/com/reactnativemap4dmap/ViewChangesTracker.java +70 -70
  57. package/android/src/main/java/vn/map4d/map/annotations/RMFBitmapDescriptor.java +9 -9
  58. package/ios/Map4dMap.h +7 -7
  59. package/ios/Map4dMap.m +14 -14
  60. package/ios/Map4dMapViewManager.m +34 -34
  61. package/ios/RCTConvert+Map4dMap.h +33 -33
  62. package/ios/RCTConvert+Map4dMap.m +112 -112
  63. package/ios/RMFCircle.h +37 -37
  64. package/ios/RMFCircle.m +100 -100
  65. package/ios/RMFCircleManager.h +18 -18
  66. package/ios/RMFCircleManager.m +155 -155
  67. package/ios/RMFCircleMap4d.h +23 -23
  68. package/ios/RMFCircleMap4d.m +13 -13
  69. package/ios/RMFCoordinate.h +22 -22
  70. package/ios/RMFCoordinate.m +13 -13
  71. package/ios/RMFDirectionsMarkerOptions.h +24 -24
  72. package/ios/RMFDirectionsMarkerOptions.m +23 -23
  73. package/ios/RMFDirectionsRenderer.h +47 -47
  74. package/ios/RMFDirectionsRenderer.m +182 -182
  75. package/ios/RMFDirectionsRendererManager.h +17 -17
  76. package/ios/RMFDirectionsRendererManager.m +84 -84
  77. package/ios/RMFDirectionsRendererMap4d.h +21 -21
  78. package/ios/RMFDirectionsRendererMap4d.m +12 -12
  79. package/ios/RMFDummyView.h +6 -6
  80. package/ios/RMFDummyView.m +12 -12
  81. package/ios/RMFEventResponse.h +39 -39
  82. package/ios/RMFEventResponse.m +98 -98
  83. package/ios/RMFIcon.h +24 -24
  84. package/ios/RMFIcon.m +35 -35
  85. package/ios/RMFMapView.h +84 -84
  86. package/ios/RMFMapView.m +376 -376
  87. package/ios/RMFMapViewManager.h +17 -17
  88. package/ios/RMFMapViewManager.m +493 -493
  89. package/ios/RMFMarker.h +57 -57
  90. package/ios/RMFMarker.m +267 -267
  91. package/ios/RMFMarkerManager.h +17 -17
  92. package/ios/RMFMarkerManager.m +156 -156
  93. package/ios/RMFMarkerMap4d.h +19 -19
  94. package/ios/RMFMarkerMap4d.m +13 -13
  95. package/ios/RMFPOI.h +38 -38
  96. package/ios/RMFPOI.m +123 -123
  97. package/ios/RMFPOIManager.h +18 -18
  98. package/ios/RMFPOIManager.m +168 -168
  99. package/ios/RMFPOIMap4d.h +22 -22
  100. package/ios/RMFPOIMap4d.m +12 -12
  101. package/ios/RMFPolygon.h +41 -41
  102. package/ios/RMFPolygon.m +106 -106
  103. package/ios/RMFPolygonManager.h +18 -18
  104. package/ios/RMFPolygonManager.m +141 -141
  105. package/ios/RMFPolygonMap4d.h +23 -23
  106. package/ios/RMFPolygonMap4d.m +15 -15
  107. package/ios/RMFPolyline.h +38 -38
  108. package/ios/RMFPolyline.m +101 -101
  109. package/ios/RMFPolylineManager.h +18 -18
  110. package/ios/RMFPolylineManager.m +139 -139
  111. package/ios/RMFPolylineMap4d.h +22 -22
  112. package/ios/RMFPolylineMap4d.m +15 -15
  113. package/ios/building/RMFBuilding.h +41 -41
  114. package/ios/building/RMFBuilding.m +104 -104
  115. package/ios/building/RMFBuildingManager.h +19 -19
  116. package/ios/building/RMFBuildingManager.m +133 -133
  117. package/ios/building/RMFBuildingMap4d.h +23 -23
  118. package/ios/building/RMFBuildingMap4d.m +15 -15
  119. package/ios/overlays/RMFTileOverlay.h +36 -36
  120. package/ios/overlays/RMFTileOverlay.m +64 -64
  121. package/ios/overlays/RMFTileOverlayManager.h +17 -17
  122. package/ios/overlays/RMFTileOverlayManager.m +27 -27
  123. package/lib/commonjs/components/MFBuilding.js +26 -26
  124. package/lib/commonjs/components/MFBuilding.js.map +1 -1
  125. package/lib/commonjs/components/MFCircle.js +20 -20
  126. package/lib/commonjs/components/MFCircle.js.map +1 -1
  127. package/lib/commonjs/components/MFDirectionsRenderer.js +32 -32
  128. package/lib/commonjs/components/MFDirectionsRenderer.js.map +1 -1
  129. package/lib/commonjs/components/MFMapView.js +133 -71
  130. package/lib/commonjs/components/MFMapView.js.map +1 -1
  131. package/lib/commonjs/components/MFMarker.js +35 -35
  132. package/lib/commonjs/components/MFMarker.js.map +1 -1
  133. package/lib/commonjs/components/MFPOI.js +20 -20
  134. package/lib/commonjs/components/MFPOI.js.map +1 -1
  135. package/lib/commonjs/components/MFPolygon.js +22 -22
  136. package/lib/commonjs/components/MFPolygon.js.map +1 -1
  137. package/lib/commonjs/components/MFPolyline.js +18 -18
  138. package/lib/commonjs/components/MFPolyline.js.map +1 -1
  139. package/lib/commonjs/components/MFTileOverlay.js +9 -9
  140. package/lib/commonjs/components/MFTileOverlay.js.map +1 -1
  141. package/lib/commonjs/components/Map4dMapView.js.map +1 -1
  142. package/lib/commonjs/components/extends/AreaFocuser.js +311 -0
  143. package/lib/commonjs/components/extends/AreaFocuser.js.map +1 -0
  144. package/lib/commonjs/index.js +8 -0
  145. package/lib/commonjs/index.js.map +1 -1
  146. package/lib/module/components/MFBuilding.js +26 -26
  147. package/lib/module/components/MFBuilding.js.map +1 -1
  148. package/lib/module/components/MFCircle.js +20 -20
  149. package/lib/module/components/MFCircle.js.map +1 -1
  150. package/lib/module/components/MFDirectionsRenderer.js +32 -32
  151. package/lib/module/components/MFDirectionsRenderer.js.map +1 -1
  152. package/lib/module/components/MFMapView.js +131 -71
  153. package/lib/module/components/MFMapView.js.map +1 -1
  154. package/lib/module/components/MFMarker.js +35 -35
  155. package/lib/module/components/MFMarker.js.map +1 -1
  156. package/lib/module/components/MFPOI.js +20 -20
  157. package/lib/module/components/MFPOI.js.map +1 -1
  158. package/lib/module/components/MFPolygon.js +22 -22
  159. package/lib/module/components/MFPolygon.js.map +1 -1
  160. package/lib/module/components/MFPolyline.js +18 -18
  161. package/lib/module/components/MFPolyline.js.map +1 -1
  162. package/lib/module/components/MFTileOverlay.js +9 -9
  163. package/lib/module/components/MFTileOverlay.js.map +1 -1
  164. package/lib/module/components/Map4dMapView.js.map +1 -1
  165. package/lib/module/components/extends/AreaFocuser.js +302 -0
  166. package/lib/module/components/extends/AreaFocuser.js.map +1 -0
  167. package/lib/module/index.js +2 -1
  168. package/lib/module/index.js.map +1 -1
  169. package/lib/typescript/components/Map4dMapView.d.ts +7 -7
  170. package/package.json +152 -152
  171. package/react-native-map4d-map.podspec +20 -20
  172. package/src/components/MFBuilding.js +187 -187
  173. package/src/components/MFCircle.js +173 -173
  174. package/src/components/MFDirectionsRenderer.js +237 -237
  175. package/src/components/MFMapView.js +447 -373
  176. package/src/components/MFMarker.js +246 -246
  177. package/src/components/MFPOI.js +184 -184
  178. package/src/components/MFPolygon.js +186 -186
  179. package/src/components/MFPolyline.js +172 -172
  180. package/src/components/MFTileOverlay.js +45 -45
  181. package/src/components/Map4dMapView.tsx +26 -26
  182. package/src/components/extends/AreaFocuser.js +339 -0
  183. package/src/index.js +23 -21
@@ -1,95 +1,95 @@
1
- package com.reactnativemap4dmap;
2
-
3
- import android.content.Context;
4
-
5
- import vn.map4d.map.core.*;
6
-
7
- import vn.map4d.map.overlays.MFTileOverlay;
8
- import vn.map4d.map.overlays.MFTileOverlayOptions;
9
- import vn.map4d.map.overlays.MFTileProvider;
10
- import vn.map4d.map.overlays.MFUrlTileProvider;
11
-
12
- public class RMFTileOverlay extends RMFFeature {
13
-
14
- private MFTileOverlayOptions options;
15
- private MFTileOverlay tileOverlay;
16
-
17
- private String templateUrl;
18
- private boolean visible;
19
- private double zIndex;
20
-
21
- public RMFTileOverlay(Context context) {
22
- super(context);
23
- visible = true;
24
- zIndex = 0.0f;
25
- templateUrl = null;
26
- }
27
-
28
- public void addToMap(Map4D map) {
29
- this.tileOverlay = map.addTileOverlay(getOptions());
30
- }
31
-
32
- public void removeFromMap(Map4D map) {
33
- if (tileOverlay == null) {
34
- return;
35
- }
36
- tileOverlay.remove();
37
- tileOverlay = null;
38
- }
39
-
40
- public void setTemplateUrl(String url) {
41
- this.templateUrl = url;
42
- }
43
-
44
- public void setVisible(boolean visible) {
45
- this.visible = visible;
46
- if (tileOverlay != null) {
47
- tileOverlay.setVisible(this.visible);
48
- }
49
- }
50
-
51
- public void setZIndex(double zIndex) {
52
- this.zIndex = zIndex;
53
- if (tileOverlay != null) {
54
- tileOverlay.setZIndex(this.zIndex);
55
- }
56
- }
57
-
58
- public MFTileOverlayOptions getOptions() {
59
- if (options == null) {
60
- options = new MFTileOverlayOptions();
61
- }
62
-
63
- fillOptions(options);
64
- return options;
65
- }
66
-
67
- private MFTileOverlayOptions fillOptions(MFTileOverlayOptions options) {
68
- MFTileProvider tileProvider = new MFUrlTileProvider() {
69
- @Override
70
- public String getTileUrl(int x, int y, int zoom) {
71
- if (templateUrl == null) {
72
- return null;
73
- }
74
- String url;
75
- if (templateUrl.contains("{z}")) {
76
- url = templateUrl.replace("{z}", String.valueOf(zoom));
77
- }
78
- else {
79
- url = templateUrl.replace("{zoom}", String.valueOf(zoom));
80
- }
81
- url = url.replace("{x}", String.valueOf(x));
82
- url = url.replace("{y}", String.valueOf(y));
83
- return url;
84
- }
85
- };
86
- options.tileProvider(tileProvider);
87
- options.zIndex(zIndex);
88
- options.visible(visible);
89
- return options;
90
- }
91
-
92
- public Object getFeature() {
93
- return tileOverlay;
94
- }
95
- }
1
+ package com.reactnativemap4dmap;
2
+
3
+ import android.content.Context;
4
+
5
+ import vn.map4d.map.core.*;
6
+
7
+ import vn.map4d.map.overlays.MFTileOverlay;
8
+ import vn.map4d.map.overlays.MFTileOverlayOptions;
9
+ import vn.map4d.map.overlays.MFTileProvider;
10
+ import vn.map4d.map.overlays.MFUrlTileProvider;
11
+
12
+ public class RMFTileOverlay extends RMFFeature {
13
+
14
+ private MFTileOverlayOptions options;
15
+ private MFTileOverlay tileOverlay;
16
+
17
+ private String templateUrl;
18
+ private boolean visible;
19
+ private double zIndex;
20
+
21
+ public RMFTileOverlay(Context context) {
22
+ super(context);
23
+ visible = true;
24
+ zIndex = 0.0f;
25
+ templateUrl = null;
26
+ }
27
+
28
+ public void addToMap(Map4D map) {
29
+ this.tileOverlay = map.addTileOverlay(getOptions());
30
+ }
31
+
32
+ public void removeFromMap(Map4D map) {
33
+ if (tileOverlay == null) {
34
+ return;
35
+ }
36
+ tileOverlay.remove();
37
+ tileOverlay = null;
38
+ }
39
+
40
+ public void setTemplateUrl(String url) {
41
+ this.templateUrl = url;
42
+ }
43
+
44
+ public void setVisible(boolean visible) {
45
+ this.visible = visible;
46
+ if (tileOverlay != null) {
47
+ tileOverlay.setVisible(this.visible);
48
+ }
49
+ }
50
+
51
+ public void setZIndex(double zIndex) {
52
+ this.zIndex = zIndex;
53
+ if (tileOverlay != null) {
54
+ tileOverlay.setZIndex(this.zIndex);
55
+ }
56
+ }
57
+
58
+ public MFTileOverlayOptions getOptions() {
59
+ if (options == null) {
60
+ options = new MFTileOverlayOptions();
61
+ }
62
+
63
+ fillOptions(options);
64
+ return options;
65
+ }
66
+
67
+ private MFTileOverlayOptions fillOptions(MFTileOverlayOptions options) {
68
+ MFTileProvider tileProvider = new MFUrlTileProvider() {
69
+ @Override
70
+ public String getTileUrl(int x, int y, int zoom) {
71
+ if (templateUrl == null) {
72
+ return null;
73
+ }
74
+ String url;
75
+ if (templateUrl.contains("{z}")) {
76
+ url = templateUrl.replace("{z}", String.valueOf(zoom));
77
+ }
78
+ else {
79
+ url = templateUrl.replace("{zoom}", String.valueOf(zoom));
80
+ }
81
+ url = url.replace("{x}", String.valueOf(x));
82
+ url = url.replace("{y}", String.valueOf(y));
83
+ return url;
84
+ }
85
+ };
86
+ options.tileProvider(tileProvider);
87
+ options.zIndex(zIndex);
88
+ options.visible(visible);
89
+ return options;
90
+ }
91
+
92
+ public Object getFeature() {
93
+ return tileOverlay;
94
+ }
95
+ }
@@ -1,65 +1,65 @@
1
- package com.reactnativemap4dmap;
2
-
3
- import androidx.annotation.Nullable;
4
-
5
- import com.facebook.react.bridge.ReadableArray;
6
- import com.facebook.react.bridge.ReadableMap;
7
- import com.facebook.react.uimanager.ThemedReactContext;
8
- import com.facebook.react.uimanager.ViewGroupManager;
9
- import com.facebook.react.uimanager.annotations.ReactProp;
10
-
11
- import java.util.HashMap;
12
- import java.util.Map;
13
-
14
- public class RMFTileOverlayManager extends ViewGroupManager<RMFTileOverlay> {
15
- private static final int k_setVisible = 1;
16
- private static final int k_setZIndex = k_setVisible + 1;
17
-
18
- @Override
19
- public String getName() {
20
- return "RMFTileOverlay";
21
- }
22
-
23
- @Override
24
- protected RMFTileOverlay createViewInstance(final ThemedReactContext reactContext) {
25
- return new RMFTileOverlay(reactContext);
26
- }
27
-
28
- @Override
29
- public void receiveCommand(final RMFTileOverlay view, final int commandId, @Nullable final ReadableArray args) {
30
- ReadableMap data;
31
- switch (commandId) {
32
- case k_setVisible:
33
- view.setVisible(args.getBoolean(0));
34
- break;
35
- case k_setZIndex:
36
- view.setZIndex(args.getDouble(0));
37
- break;
38
- }
39
- }
40
-
41
- @Nullable
42
- @Override
43
- public Map<String, Integer> getCommandsMap() {
44
- final HashMap<String, Integer> map = new HashMap();
45
- map.put("setVisible", k_setVisible);
46
- map.put("setZIndex", k_setZIndex);
47
- return map;
48
- }
49
-
50
- @ReactProp(name = "urlTemplate")
51
- public void setTemplateUrl(final RMFTileOverlay view, final String url) {
52
- view.setTemplateUrl(url);
53
- }
54
-
55
- @ReactProp(name = "visible")
56
- public void setVisible(final RMFTileOverlay view, final boolean visible) {
57
- view.setVisible(visible);
58
- }
59
-
60
- @ReactProp(name = "zIndex")
61
- public void setZIndex(final RMFTileOverlay view, final double zIndex) {
62
- view.setZIndex(zIndex);
63
- }
64
-
1
+ package com.reactnativemap4dmap;
2
+
3
+ import androidx.annotation.Nullable;
4
+
5
+ import com.facebook.react.bridge.ReadableArray;
6
+ import com.facebook.react.bridge.ReadableMap;
7
+ import com.facebook.react.uimanager.ThemedReactContext;
8
+ import com.facebook.react.uimanager.ViewGroupManager;
9
+ import com.facebook.react.uimanager.annotations.ReactProp;
10
+
11
+ import java.util.HashMap;
12
+ import java.util.Map;
13
+
14
+ public class RMFTileOverlayManager extends ViewGroupManager<RMFTileOverlay> {
15
+ private static final int k_setVisible = 1;
16
+ private static final int k_setZIndex = k_setVisible + 1;
17
+
18
+ @Override
19
+ public String getName() {
20
+ return "RMFTileOverlay";
21
+ }
22
+
23
+ @Override
24
+ protected RMFTileOverlay createViewInstance(final ThemedReactContext reactContext) {
25
+ return new RMFTileOverlay(reactContext);
26
+ }
27
+
28
+ @Override
29
+ public void receiveCommand(final RMFTileOverlay view, final int commandId, @Nullable final ReadableArray args) {
30
+ ReadableMap data;
31
+ switch (commandId) {
32
+ case k_setVisible:
33
+ view.setVisible(args.getBoolean(0));
34
+ break;
35
+ case k_setZIndex:
36
+ view.setZIndex(args.getDouble(0));
37
+ break;
38
+ }
39
+ }
40
+
41
+ @Nullable
42
+ @Override
43
+ public Map<String, Integer> getCommandsMap() {
44
+ final HashMap<String, Integer> map = new HashMap();
45
+ map.put("setVisible", k_setVisible);
46
+ map.put("setZIndex", k_setZIndex);
47
+ return map;
48
+ }
49
+
50
+ @ReactProp(name = "urlTemplate")
51
+ public void setTemplateUrl(final RMFTileOverlay view, final String url) {
52
+ view.setTemplateUrl(url);
53
+ }
54
+
55
+ @ReactProp(name = "visible")
56
+ public void setVisible(final RMFTileOverlay view, final boolean visible) {
57
+ view.setVisible(visible);
58
+ }
59
+
60
+ @ReactProp(name = "zIndex")
61
+ public void setZIndex(final RMFTileOverlay view, final double zIndex) {
62
+ view.setZIndex(zIndex);
63
+ }
64
+
65
65
  }
@@ -1,31 +1,31 @@
1
- /**
2
- * Copyright (c) 2015-present, Facebook, Inc.
3
- * All rights reserved.
4
- * This source code is licensed under the BSD-style license found in the
5
- * LICENSE file in the root directory of this source tree. An additional grant
6
- * of patent rights can be found in the PATENTS file in the same directory.
7
- */
8
-
9
- package com.reactnativemap4dmap;
10
-
11
- import com.facebook.react.uimanager.LayoutShadowNode;
12
- import com.facebook.react.uimanager.UIViewOperationQueue;
13
-
14
- import java.util.HashMap;
15
- import java.util.Map;
16
-
17
- // Custom LayoutShadowNode implementation used in conjunction with the AirMapManager
18
- // which sends the width/height of the view after layout occurs.
19
- public class SizeReportingShadowNode extends LayoutShadowNode {
20
-
21
- @Override
22
- public void onCollectExtraUpdates(UIViewOperationQueue uiViewOperationQueue) {
23
- super.onCollectExtraUpdates(uiViewOperationQueue);
24
-
25
- Map<String, Float> data = new HashMap<>();
26
- data.put("width", getLayoutWidth());
27
- data.put("height", getLayoutHeight());
28
-
29
- uiViewOperationQueue.enqueueUpdateExtraData(getReactTag(), data);
30
- }
31
- }
1
+ /**
2
+ * Copyright (c) 2015-present, Facebook, Inc.
3
+ * All rights reserved.
4
+ * This source code is licensed under the BSD-style license found in the
5
+ * LICENSE file in the root directory of this source tree. An additional grant
6
+ * of patent rights can be found in the PATENTS file in the same directory.
7
+ */
8
+
9
+ package com.reactnativemap4dmap;
10
+
11
+ import com.facebook.react.uimanager.LayoutShadowNode;
12
+ import com.facebook.react.uimanager.UIViewOperationQueue;
13
+
14
+ import java.util.HashMap;
15
+ import java.util.Map;
16
+
17
+ // Custom LayoutShadowNode implementation used in conjunction with the AirMapManager
18
+ // which sends the width/height of the view after layout occurs.
19
+ public class SizeReportingShadowNode extends LayoutShadowNode {
20
+
21
+ @Override
22
+ public void onCollectExtraUpdates(UIViewOperationQueue uiViewOperationQueue) {
23
+ super.onCollectExtraUpdates(uiViewOperationQueue);
24
+
25
+ Map<String, Float> data = new HashMap<>();
26
+ data.put("width", getLayoutWidth());
27
+ data.put("height", getLayoutHeight());
28
+
29
+ uiViewOperationQueue.enqueueUpdateExtraData(getReactTag(), data);
30
+ }
31
+ }
@@ -1,31 +1,31 @@
1
- package com.reactnativemap4dmap;
2
-
3
- import android.content.Context;
4
- import android.graphics.Canvas;
5
- import android.graphics.Rect;
6
- import android.os.Build;
7
-
8
- import com.facebook.react.uimanager.ViewProps;
9
- import com.facebook.react.views.view.ReactViewGroup;
10
-
11
- public class ViewAttacherGroup extends ReactViewGroup {
12
-
13
- public ViewAttacherGroup(Context context) {
14
- super(context);
15
-
16
- this.setWillNotDraw(true);
17
- this.setVisibility(VISIBLE);
18
- this.setAlpha(0.0f);
19
- this.setRemoveClippedSubviews(false);
20
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) {
21
- this.setClipBounds(new Rect(0, 0, 0, 0));
22
- }
23
- this.setOverflow("hidden"); // Change to ViewProps.HIDDEN until RN 0.57 is base
24
- }
25
-
26
- // This should make it more performant, avoid trying to hard to overlap layers with opacity.
27
- @Override
28
- public boolean hasOverlappingRendering() {
29
- return false;
30
- }
31
- }
1
+ package com.reactnativemap4dmap;
2
+
3
+ import android.content.Context;
4
+ import android.graphics.Canvas;
5
+ import android.graphics.Rect;
6
+ import android.os.Build;
7
+
8
+ import com.facebook.react.uimanager.ViewProps;
9
+ import com.facebook.react.views.view.ReactViewGroup;
10
+
11
+ public class ViewAttacherGroup extends ReactViewGroup {
12
+
13
+ public ViewAttacherGroup(Context context) {
14
+ super(context);
15
+
16
+ this.setWillNotDraw(true);
17
+ this.setVisibility(VISIBLE);
18
+ this.setAlpha(0.0f);
19
+ this.setRemoveClippedSubviews(false);
20
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) {
21
+ this.setClipBounds(new Rect(0, 0, 0, 0));
22
+ }
23
+ this.setOverflow("hidden"); // Change to ViewProps.HIDDEN until RN 0.57 is base
24
+ }
25
+
26
+ // This should make it more performant, avoid trying to hard to overlap layers with opacity.
27
+ @Override
28
+ public boolean hasOverlappingRendering() {
29
+ return false;
30
+ }
31
+ }
@@ -1,70 +1,70 @@
1
- package com.reactnativemap4dmap;
2
-
3
- import android.os.Handler;
4
- import android.os.Looper;
5
-
6
- import java.util.LinkedList;
7
-
8
- public class ViewChangesTracker {
9
-
10
- private static ViewChangesTracker instance;
11
- private Handler handler;
12
- private LinkedList<RMFMarker> markers = new LinkedList<>();
13
- private boolean hasScheduledFrame = false;
14
- private Runnable updateRunnable;
15
- private final long fps = 40;
16
-
17
- private ViewChangesTracker() {
18
- handler = new Handler(Looper.myLooper());
19
- updateRunnable = new Runnable() {
20
- @Override
21
- public void run() {
22
- hasScheduledFrame = false;
23
- update();
24
-
25
- if (markers.size() > 0) {
26
- handler.postDelayed(updateRunnable, fps);
27
- }
28
- }
29
- };
30
- }
31
-
32
- static ViewChangesTracker getInstance() {
33
- if (instance == null) {
34
- synchronized (ViewChangesTracker.class) {
35
- instance = new ViewChangesTracker();
36
- }
37
- }
38
-
39
- return instance;
40
- }
41
-
42
- public void addMarker(RMFMarker marker) {
43
- markers.add(marker);
44
-
45
- if (!hasScheduledFrame) {
46
- hasScheduledFrame = true;
47
- handler.postDelayed(updateRunnable, fps);
48
- }
49
- }
50
-
51
- public void removeMarker(RMFMarker marker) {
52
- markers.remove(marker);
53
- }
54
-
55
- private LinkedList<RMFMarker> markersToRemove = new LinkedList<>();
56
-
57
- public void update() {
58
- for (RMFMarker marker : markers) {
59
- if (!marker.updateCustomForTracking()) {
60
- markersToRemove.add(marker);
61
- }
62
- }
63
-
64
- // Remove markers that are not active anymore
65
- if (markersToRemove.size() > 0) {
66
- markers.removeAll(markersToRemove);
67
- markersToRemove.clear();
68
- }
69
- }
70
- }
1
+ package com.reactnativemap4dmap;
2
+
3
+ import android.os.Handler;
4
+ import android.os.Looper;
5
+
6
+ import java.util.LinkedList;
7
+
8
+ public class ViewChangesTracker {
9
+
10
+ private static ViewChangesTracker instance;
11
+ private Handler handler;
12
+ private LinkedList<RMFMarker> markers = new LinkedList<>();
13
+ private boolean hasScheduledFrame = false;
14
+ private Runnable updateRunnable;
15
+ private final long fps = 40;
16
+
17
+ private ViewChangesTracker() {
18
+ handler = new Handler(Looper.myLooper());
19
+ updateRunnable = new Runnable() {
20
+ @Override
21
+ public void run() {
22
+ hasScheduledFrame = false;
23
+ update();
24
+
25
+ if (markers.size() > 0) {
26
+ handler.postDelayed(updateRunnable, fps);
27
+ }
28
+ }
29
+ };
30
+ }
31
+
32
+ static ViewChangesTracker getInstance() {
33
+ if (instance == null) {
34
+ synchronized (ViewChangesTracker.class) {
35
+ instance = new ViewChangesTracker();
36
+ }
37
+ }
38
+
39
+ return instance;
40
+ }
41
+
42
+ public void addMarker(RMFMarker marker) {
43
+ markers.add(marker);
44
+
45
+ if (!hasScheduledFrame) {
46
+ hasScheduledFrame = true;
47
+ handler.postDelayed(updateRunnable, fps);
48
+ }
49
+ }
50
+
51
+ public void removeMarker(RMFMarker marker) {
52
+ markers.remove(marker);
53
+ }
54
+
55
+ private LinkedList<RMFMarker> markersToRemove = new LinkedList<>();
56
+
57
+ public void update() {
58
+ for (RMFMarker marker : markers) {
59
+ if (!marker.updateCustomForTracking()) {
60
+ markersToRemove.add(marker);
61
+ }
62
+ }
63
+
64
+ // Remove markers that are not active anymore
65
+ if (markersToRemove.size() > 0) {
66
+ markers.removeAll(markersToRemove);
67
+ markersToRemove.clear();
68
+ }
69
+ }
70
+ }
@@ -1,9 +1,9 @@
1
- package vn.map4d.map.annotations;
2
-
3
- import android.graphics.Bitmap;
4
-
5
- public class RMFBitmapDescriptor {
6
- public static MFBitmapDescriptor create(Bitmap bitmap, int densityDpi) {
7
- return new MFBitmapDescriptor(bitmap, densityDpi);
8
- }
9
- }
1
+ package vn.map4d.map.annotations;
2
+
3
+ import android.graphics.Bitmap;
4
+
5
+ public class RMFBitmapDescriptor {
6
+ public static MFBitmapDescriptor create(Bitmap bitmap, int densityDpi) {
7
+ return new MFBitmapDescriptor(bitmap, densityDpi);
8
+ }
9
+ }
package/ios/Map4dMap.h CHANGED
@@ -1,7 +1,7 @@
1
- #import <React/RCTBridgeModule.h>
2
- #import "RMFMapViewManager.h"
3
- #import "RMFMarkerManager.h"
4
-
5
- @interface Map4dMap : NSObject <RCTBridgeModule>
6
-
7
- @end
1
+ #import <React/RCTBridgeModule.h>
2
+ #import "RMFMapViewManager.h"
3
+ #import "RMFMarkerManager.h"
4
+
5
+ @interface Map4dMap : NSObject <RCTBridgeModule>
6
+
7
+ @end
package/ios/Map4dMap.m CHANGED
@@ -1,14 +1,14 @@
1
- #import "Map4dMap.h"
2
-
3
-
4
- @implementation Map4dMap
5
-
6
- RCT_EXPORT_MODULE()
7
-
8
- RCT_EXPORT_METHOD(sampleMethod:(NSString *)stringArgument numberParameter:(nonnull NSNumber *)numberArgument callback:(RCTResponseSenderBlock)callback)
9
- {
10
- // TODO: Implement some actually useful functionality
11
- callback(@[[NSString stringWithFormat: @"numberArgument: %@ stringArgument: %@", numberArgument, stringArgument]]);
12
- }
13
-
14
- @end
1
+ #import "Map4dMap.h"
2
+
3
+
4
+ @implementation Map4dMap
5
+
6
+ RCT_EXPORT_MODULE()
7
+
8
+ RCT_EXPORT_METHOD(sampleMethod:(NSString *)stringArgument numberParameter:(nonnull NSNumber *)numberArgument callback:(RCTResponseSenderBlock)callback)
9
+ {
10
+ // TODO: Implement some actually useful functionality
11
+ callback(@[[NSString stringWithFormat: @"numberArgument: %@ stringArgument: %@", numberArgument, stringArgument]]);
12
+ }
13
+
14
+ @end