@maydon_tech/react-native-nitro-maps 0.1.4 → 0.2.0
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.
- package/LICENSE +1 -1
- package/NitroMap.podspec +1 -1
- package/README.md +82 -9
- package/android/CMakeLists.txt +4 -1
- package/android/gradle.properties +4 -4
- package/android/src/main/cpp/ClusterEngineJNI.cpp +198 -0
- package/android/src/main/kotlin/com/margelo/nitro/nitromap/NitroMap.kt +397 -0
- package/android/src/main/kotlin/com/margelo/nitro/nitromap/NitroMapConfig.kt +53 -0
- package/android/src/main/{java → kotlin}/com/margelo/nitro/nitromap/NitroMapPackage.kt +4 -4
- package/android/src/main/kotlin/com/margelo/nitro/nitromap/NitroMapView.kt +73 -0
- package/android/src/main/kotlin/com/margelo/nitro/nitromap/UserLocationManager.kt +295 -0
- package/android/src/main/kotlin/com/margelo/nitro/nitromap/clustering/ClusterIconRenderer.kt +111 -0
- package/android/src/main/kotlin/com/margelo/nitro/nitromap/clustering/ClusteringManager.kt +104 -0
- package/android/src/main/kotlin/com/margelo/nitro/nitromap/clustering/NitroClusterEngine.kt +166 -0
- package/android/src/main/kotlin/com/margelo/nitro/nitromap/markers/MarkerIconFactory.kt +303 -0
- package/android/src/main/kotlin/com/margelo/nitro/nitromap/markers/MarkerSelectionHandler.kt +72 -0
- package/android/src/main/kotlin/com/margelo/nitro/nitromap/markers/PriceMarkerRenderer.kt +159 -0
- package/android/src/main/kotlin/com/margelo/nitro/nitromap/providers/MapProviderFactory.kt +24 -0
- package/android/src/main/kotlin/com/margelo/nitro/nitromap/providers/MapProviderInterface.kt +128 -0
- package/android/src/main/kotlin/com/margelo/nitro/nitromap/providers/google/GoogleMapDelegate.kt +317 -0
- package/android/src/main/kotlin/com/margelo/nitro/nitromap/providers/google/GoogleMapProvider+Clustering.kt +524 -0
- package/android/src/main/kotlin/com/margelo/nitro/nitromap/providers/google/GoogleMapProvider+Markers.kt +358 -0
- package/android/src/main/kotlin/com/margelo/nitro/nitromap/providers/google/GoogleMapProvider+Overlays.kt +272 -0
- package/android/src/main/kotlin/com/margelo/nitro/nitromap/providers/google/GoogleMapProvider+UserLocation.kt +296 -0
- package/android/src/main/kotlin/com/margelo/nitro/nitromap/providers/google/GoogleMapProvider.kt +815 -0
- package/android/src/main/kotlin/com/margelo/nitro/nitromap/providers/google/MarkerTagData.kt +19 -0
- package/ios/Location/NitroLocationManager.swift +116 -0
- package/ios/MarkerRenderer/MarkerIconFactory.swift +1 -3
- package/ios/MarkerRenderer/PriceMarkerRenderer.swift +10 -6
- package/ios/NitroMap.swift +279 -13
- package/ios/NitroMapConfig/NitroMapConfig.swift +45 -0
- package/ios/Providers/{GoogleMapDelegate.swift → Google/GoogleMapDelegate.swift} +48 -23
- package/ios/Providers/Google/GoogleMapProvider+Camera.swift +180 -0
- package/ios/Providers/Google/GoogleMapProvider+Clustering.swift +541 -0
- package/ios/Providers/Google/GoogleMapProvider+Markers.swift +270 -0
- package/ios/Providers/Google/GoogleMapProvider+Overlays.swift +245 -0
- package/ios/Providers/Google/GoogleMapProvider+UserLocation.swift +180 -0
- package/ios/Providers/Google/GoogleMapProvider.swift +342 -0
- package/ios/Providers/MapProviderFactory.swift +17 -0
- package/ios/Providers/MapProviderProtocol.swift +48 -1
- package/ios/Shared/ClusterConfig+Factory.swift +2 -2
- package/ios/Shared/MapStyleProvider.swift +6 -4
- package/ios/Shared/MarkerSelectionHandler.swift +4 -1
- package/ios/Utils/ColorValueExtension.swift +46 -67
- package/lib/module/components/ImageMarker.js +39 -29
- package/lib/module/components/ImageMarker.js.map +1 -1
- package/lib/module/components/Marker.js +118 -0
- package/lib/module/components/Marker.js.map +1 -0
- package/lib/module/components/NitroCircle.js +92 -0
- package/lib/module/components/NitroCircle.js.map +1 -0
- package/lib/module/components/NitroMap.js +216 -76
- package/lib/module/components/NitroMap.js.map +1 -1
- package/lib/module/components/NitroPolygon.js +135 -0
- package/lib/module/components/NitroPolygon.js.map +1 -0
- package/lib/module/components/NitroPolyline.js +115 -0
- package/lib/module/components/NitroPolyline.js.map +1 -0
- package/lib/module/components/PriceMarker.js +16 -29
- package/lib/module/components/PriceMarker.js.map +1 -1
- package/lib/module/context/NitroMapContext.js.map +1 -1
- package/lib/module/hooks/useNitroCircle.js +18 -0
- package/lib/module/hooks/useNitroCircle.js.map +1 -0
- package/lib/module/hooks/useNitroMarker.js +26 -9
- package/lib/module/hooks/useNitroMarker.js.map +1 -1
- package/lib/module/hooks/useNitroOverlay.js +59 -0
- package/lib/module/hooks/useNitroOverlay.js.map +1 -0
- package/lib/module/hooks/useNitroPolygon.js +18 -0
- package/lib/module/hooks/useNitroPolygon.js.map +1 -0
- package/lib/module/hooks/useNitroPolyline.js +18 -0
- package/lib/module/hooks/useNitroPolyline.js.map +1 -0
- package/lib/module/index.js +5 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/types/overlay.js +4 -0
- package/lib/module/types/overlay.js.map +1 -0
- package/lib/module/types/theme.js +4 -0
- package/lib/module/types/theme.js.map +1 -0
- package/lib/module/utils/colors.js +41 -13
- package/lib/module/utils/colors.js.map +1 -1
- package/lib/module/utils/validation.js +45 -0
- package/lib/module/utils/validation.js.map +1 -0
- package/lib/typescript/src/components/ImageMarker.d.ts.map +1 -1
- package/lib/typescript/src/components/Marker.d.ts +34 -0
- package/lib/typescript/src/components/Marker.d.ts.map +1 -0
- package/lib/typescript/src/components/NitroCircle.d.ts +70 -0
- package/lib/typescript/src/components/NitroCircle.d.ts.map +1 -0
- package/lib/typescript/src/components/NitroMap.d.ts +60 -3
- package/lib/typescript/src/components/NitroMap.d.ts.map +1 -1
- package/lib/typescript/src/components/NitroPolygon.d.ts +86 -0
- package/lib/typescript/src/components/NitroPolygon.d.ts.map +1 -0
- package/lib/typescript/src/components/NitroPolyline.d.ts +84 -0
- package/lib/typescript/src/components/NitroPolyline.d.ts.map +1 -0
- package/lib/typescript/src/components/PriceMarker.d.ts +0 -5
- package/lib/typescript/src/components/PriceMarker.d.ts.map +1 -1
- package/lib/typescript/src/context/NitroMapContext.d.ts +2 -0
- package/lib/typescript/src/context/NitroMapContext.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useNitroCircle.d.ts +7 -0
- package/lib/typescript/src/hooks/useNitroCircle.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useNitroMarker.d.ts +20 -0
- package/lib/typescript/src/hooks/useNitroMarker.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useNitroOverlay.d.ts +26 -0
- package/lib/typescript/src/hooks/useNitroOverlay.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useNitroPolygon.d.ts +7 -0
- package/lib/typescript/src/hooks/useNitroPolygon.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useNitroPolyline.d.ts +7 -0
- package/lib/typescript/src/hooks/useNitroPolyline.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +15 -2
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/specs/NitroMap.nitro.d.ts +248 -6
- package/lib/typescript/src/specs/NitroMap.nitro.d.ts.map +1 -1
- package/lib/typescript/src/types/map.d.ts +34 -4
- package/lib/typescript/src/types/map.d.ts.map +1 -1
- package/lib/typescript/src/types/marker.d.ts +24 -36
- package/lib/typescript/src/types/marker.d.ts.map +1 -1
- package/lib/typescript/src/types/overlay.d.ts +75 -0
- package/lib/typescript/src/types/overlay.d.ts.map +1 -0
- package/lib/typescript/src/types/theme.d.ts +93 -0
- package/lib/typescript/src/types/theme.d.ts.map +1 -0
- package/lib/typescript/src/utils/colors.d.ts +6 -8
- package/lib/typescript/src/utils/colors.d.ts.map +1 -1
- package/lib/typescript/src/utils/validation.d.ts +12 -0
- package/lib/typescript/src/utils/validation.d.ts.map +1 -0
- package/nitrogen/generated/android/c++/JCircleData.hpp +94 -0
- package/nitrogen/generated/android/c++/JClusterConfig.hpp +5 -7
- package/nitrogen/generated/android/c++/JFunc_void_UserLocationChangeEvent.hpp +79 -0
- package/nitrogen/generated/android/c++/JFunc_void_UserTrackingMode.hpp +77 -0
- package/nitrogen/generated/android/c++/JFunc_void_std__string.hpp +76 -0
- package/nitrogen/generated/android/c++/JHybridNitroMapSpec.cpp +328 -21
- package/nitrogen/generated/android/c++/JHybridNitroMapSpec.hpp +53 -2
- package/nitrogen/generated/android/c++/JMarkerAnimation.hpp +3 -6
- package/nitrogen/generated/android/c++/JMarkerData.hpp +15 -3
- package/nitrogen/generated/android/c++/JPolygonData.hpp +149 -0
- package/nitrogen/generated/android/c++/JPolylineData.hpp +113 -0
- package/nitrogen/generated/android/c++/JUserLocationChangeEvent.hpp +70 -0
- package/nitrogen/generated/android/c++/JUserTrackingMode.hpp +62 -0
- package/nitrogen/generated/android/c++/views/JHybridNitroMapStateUpdater.cpp +72 -4
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/CircleData.kt +62 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/ClusterConfig.kt +4 -4
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/Func_void_UserLocationChangeEvent.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/Func_void_UserTrackingMode.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/Func_void_std__string.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/HybridNitroMapSpec.kt +228 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/MarkerAnimation.kt +1 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/MarkerData.kt +12 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/PolygonData.kt +62 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/PolylineData.kt +62 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/UserLocationChangeEvent.kt +47 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitromap/{ClusterAnimationStyle.kt → UserTrackingMode.kt} +6 -8
- package/nitrogen/generated/android/nitromapOnLoad.cpp +6 -0
- package/nitrogen/generated/ios/NitroMap-Swift-Cxx-Bridge.cpp +24 -0
- package/nitrogen/generated/ios/NitroMap-Swift-Cxx-Bridge.hpp +175 -17
- package/nitrogen/generated/ios/NitroMap-Swift-Cxx-Umbrella.hpp +15 -3
- package/nitrogen/generated/ios/c++/HybridNitroMapSpecSwift.hpp +249 -16
- package/nitrogen/generated/ios/c++/views/HybridNitroMapComponent.mm +90 -5
- package/nitrogen/generated/ios/swift/CircleData.swift +143 -0
- package/nitrogen/generated/ios/swift/ClusterConfig.swift +22 -15
- package/nitrogen/generated/ios/swift/Func_void_UserLocationChangeEvent.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_UserTrackingMode.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_std__string.swift +47 -0
- package/nitrogen/generated/ios/swift/HybridNitroMapSpec.swift +35 -1
- package/nitrogen/generated/ios/swift/HybridNitroMapSpec_cxx.swift +582 -8
- package/nitrogen/generated/ios/swift/MarkerAnimation.swift +4 -8
- package/nitrogen/generated/ios/swift/MarkerData.swift +54 -2
- package/nitrogen/generated/ios/swift/PolygonData.swift +179 -0
- package/nitrogen/generated/ios/swift/PolylineData.swift +155 -0
- package/nitrogen/generated/ios/swift/UserLocationChangeEvent.swift +69 -0
- package/nitrogen/generated/ios/swift/UserTrackingMode.swift +44 -0
- package/nitrogen/generated/shared/c++/CircleData.hpp +113 -0
- package/nitrogen/generated/shared/c++/ClusterConfig.hpp +5 -8
- package/nitrogen/generated/shared/c++/HybridNitroMapSpec.cpp +53 -2
- package/nitrogen/generated/shared/c++/HybridNitroMapSpec.hpp +75 -6
- package/nitrogen/generated/shared/c++/MarkerAnimation.hpp +4 -8
- package/nitrogen/generated/shared/c++/MarkerData.hpp +14 -2
- package/nitrogen/generated/shared/c++/PolygonData.hpp +114 -0
- package/nitrogen/generated/shared/c++/PolylineData.hpp +114 -0
- package/nitrogen/generated/shared/c++/UserLocationChangeEvent.hpp +88 -0
- package/nitrogen/generated/shared/c++/UserTrackingMode.hpp +80 -0
- package/nitrogen/generated/shared/c++/views/HybridNitroMapComponent.cpp +216 -12
- package/nitrogen/generated/shared/c++/views/HybridNitroMapComponent.hpp +23 -1
- package/nitrogen/generated/shared/json/NitroMapConfig.json +18 -1
- package/package.json +36 -5
- package/src/components/ImageMarker.tsx +58 -42
- package/src/components/Marker.tsx +161 -0
- package/src/components/NitroCircle.tsx +183 -0
- package/src/components/NitroMap.tsx +328 -78
- package/src/components/NitroPolygon.tsx +229 -0
- package/src/components/NitroPolyline.tsx +208 -0
- package/src/components/PriceMarker.tsx +23 -48
- package/src/context/NitroMapContext.tsx +4 -0
- package/src/hooks/useNitroCircle.ts +25 -0
- package/src/hooks/useNitroMarker.ts +49 -10
- package/src/hooks/useNitroOverlay.ts +68 -0
- package/src/hooks/useNitroPolygon.ts +25 -0
- package/src/hooks/useNitroPolyline.ts +25 -0
- package/src/index.tsx +23 -2
- package/src/specs/NitroMap.nitro.ts +294 -5
- package/src/types/map.ts +36 -4
- package/src/types/marker.ts +24 -44
- package/src/types/overlay.ts +77 -0
- package/src/types/theme.ts +101 -0
- package/src/utils/colors.ts +48 -16
- package/src/utils/validation.ts +69 -0
- package/android/src/main/java/com/margelo/nitro/nitromap/ClusterIconGenerator.kt +0 -108
- package/android/src/main/java/com/margelo/nitro/nitromap/ColorUtils.kt +0 -63
- package/android/src/main/java/com/margelo/nitro/nitromap/HybridNitroMap.kt +0 -408
- package/android/src/main/java/com/margelo/nitro/nitromap/HybridNitroMapConfig.kt +0 -68
- package/android/src/main/java/com/margelo/nitro/nitromap/MarkerIconCache.kt +0 -176
- package/android/src/main/java/com/margelo/nitro/nitromap/MarkerIconFactory.kt +0 -252
- package/android/src/main/java/com/margelo/nitro/nitromap/clustering/NitroClusterEngine.kt +0 -252
- package/android/src/main/java/com/margelo/nitro/nitromap/clustering/QuadTree.kt +0 -195
- package/android/src/main/java/com/margelo/nitro/nitromap/providers/GoogleMapProvider.kt +0 -912
- package/android/src/main/java/com/margelo/nitro/nitromap/providers/MapProviderInterface.kt +0 -70
- package/cpp/QuadTree.hpp +0 -246
- package/ios/NitroMapConfig/HybridNitroMapConfig.swift +0 -33
- package/ios/Providers/GoogleMapProvider+Camera.swift +0 -164
- package/ios/Providers/GoogleMapProvider.swift +0 -924
- package/nitrogen/generated/android/c++/JClusterAnimationStyle.hpp +0 -68
- package/nitrogen/generated/ios/swift/ClusterAnimationStyle.swift +0 -52
- package/nitrogen/generated/shared/c++/ClusterAnimationStyle.hpp +0 -88
|
@@ -23,14 +23,16 @@ namespace margelo::nitro::nitromap { struct ClusterConfig; }
|
|
|
23
23
|
namespace margelo::nitro::nitromap { enum class ClusterStrategy; }
|
|
24
24
|
// Forward declaration of `MarkerColor` to properly resolve imports.
|
|
25
25
|
namespace margelo::nitro::nitromap { struct MarkerColor; }
|
|
26
|
-
// Forward declaration of `
|
|
27
|
-
namespace margelo::nitro::nitromap {
|
|
26
|
+
// Forward declaration of `EdgePadding` to properly resolve imports.
|
|
27
|
+
namespace margelo::nitro::nitromap { struct EdgePadding; }
|
|
28
|
+
// Forward declaration of `UserTrackingMode` to properly resolve imports.
|
|
29
|
+
namespace margelo::nitro::nitromap { enum class UserTrackingMode; }
|
|
30
|
+
// Forward declaration of `Point` to properly resolve imports.
|
|
31
|
+
namespace margelo::nitro::nitromap { struct Point; }
|
|
28
32
|
// Forward declaration of `MapPressEvent` to properly resolve imports.
|
|
29
33
|
namespace margelo::nitro::nitromap { struct MapPressEvent; }
|
|
30
34
|
// Forward declaration of `Coordinate` to properly resolve imports.
|
|
31
35
|
namespace margelo::nitro::nitromap { struct Coordinate; }
|
|
32
|
-
// Forward declaration of `Point` to properly resolve imports.
|
|
33
|
-
namespace margelo::nitro::nitromap { struct Point; }
|
|
34
36
|
// Forward declaration of `RegionChangeEvent` to properly resolve imports.
|
|
35
37
|
namespace margelo::nitro::nitromap { struct RegionChangeEvent; }
|
|
36
38
|
// Forward declaration of `MarkerPressEvent` to properly resolve imports.
|
|
@@ -41,12 +43,12 @@ namespace margelo::nitro::nitromap { struct MarkerDragEvent; }
|
|
|
41
43
|
namespace margelo::nitro::nitromap { struct ClusterPressEvent; }
|
|
42
44
|
// Forward declaration of `MapError` to properly resolve imports.
|
|
43
45
|
namespace margelo::nitro::nitromap { struct MapError; }
|
|
46
|
+
// Forward declaration of `UserLocationChangeEvent` to properly resolve imports.
|
|
47
|
+
namespace margelo::nitro::nitromap { struct UserLocationChangeEvent; }
|
|
44
48
|
// Forward declaration of `Camera` to properly resolve imports.
|
|
45
49
|
namespace margelo::nitro::nitromap { struct Camera; }
|
|
46
50
|
// Forward declaration of `MapBoundaries` to properly resolve imports.
|
|
47
51
|
namespace margelo::nitro::nitromap { struct MapBoundaries; }
|
|
48
|
-
// Forward declaration of `EdgePadding` to properly resolve imports.
|
|
49
|
-
namespace margelo::nitro::nitromap { struct EdgePadding; }
|
|
50
52
|
// Forward declaration of `MarkerData` to properly resolve imports.
|
|
51
53
|
namespace margelo::nitro::nitromap { struct MarkerData; }
|
|
52
54
|
// Forward declaration of `MarkerConfig` to properly resolve imports.
|
|
@@ -59,6 +61,12 @@ namespace margelo::nitro::nitromap { struct ImageMarkerConfig; }
|
|
|
59
61
|
namespace margelo::nitro::nitromap { struct PriceMarkerStyle; }
|
|
60
62
|
// Forward declaration of `MarkerAnimation` to properly resolve imports.
|
|
61
63
|
namespace margelo::nitro::nitromap { enum class MarkerAnimation; }
|
|
64
|
+
// Forward declaration of `PolylineData` to properly resolve imports.
|
|
65
|
+
namespace margelo::nitro::nitromap { struct PolylineData; }
|
|
66
|
+
// Forward declaration of `PolygonData` to properly resolve imports.
|
|
67
|
+
namespace margelo::nitro::nitromap { struct PolygonData; }
|
|
68
|
+
// Forward declaration of `CircleData` to properly resolve imports.
|
|
69
|
+
namespace margelo::nitro::nitromap { struct CircleData; }
|
|
62
70
|
|
|
63
71
|
#include "MapProvider.hpp"
|
|
64
72
|
#include <optional>
|
|
@@ -81,8 +89,12 @@ namespace margelo::nitro::nitromap { enum class MarkerAnimation; }
|
|
|
81
89
|
#include <variant>
|
|
82
90
|
#include "JVariant_String_MarkerColor.hpp"
|
|
83
91
|
#include "JMarkerColor.hpp"
|
|
84
|
-
#include "
|
|
85
|
-
#include "
|
|
92
|
+
#include "EdgePadding.hpp"
|
|
93
|
+
#include "JEdgePadding.hpp"
|
|
94
|
+
#include "UserTrackingMode.hpp"
|
|
95
|
+
#include "JUserTrackingMode.hpp"
|
|
96
|
+
#include "Point.hpp"
|
|
97
|
+
#include "JPoint.hpp"
|
|
86
98
|
#include "MapPressEvent.hpp"
|
|
87
99
|
#include <functional>
|
|
88
100
|
#include "JFunc_void_MapPressEvent.hpp"
|
|
@@ -90,8 +102,6 @@ namespace margelo::nitro::nitromap { enum class MarkerAnimation; }
|
|
|
90
102
|
#include "JMapPressEvent.hpp"
|
|
91
103
|
#include "Coordinate.hpp"
|
|
92
104
|
#include "JCoordinate.hpp"
|
|
93
|
-
#include "Point.hpp"
|
|
94
|
-
#include "JPoint.hpp"
|
|
95
105
|
#include "JFunc_void.hpp"
|
|
96
106
|
#include "RegionChangeEvent.hpp"
|
|
97
107
|
#include "JFunc_void_RegionChangeEvent.hpp"
|
|
@@ -105,17 +115,20 @@ namespace margelo::nitro::nitromap { enum class MarkerAnimation; }
|
|
|
105
115
|
#include "ClusterPressEvent.hpp"
|
|
106
116
|
#include "JFunc_void_ClusterPressEvent.hpp"
|
|
107
117
|
#include "JClusterPressEvent.hpp"
|
|
118
|
+
#include "JFunc_void_std__string.hpp"
|
|
108
119
|
#include "MapError.hpp"
|
|
109
120
|
#include "JFunc_void_MapError.hpp"
|
|
110
121
|
#include "JMapError.hpp"
|
|
122
|
+
#include "UserLocationChangeEvent.hpp"
|
|
123
|
+
#include "JFunc_void_UserLocationChangeEvent.hpp"
|
|
124
|
+
#include "JUserLocationChangeEvent.hpp"
|
|
125
|
+
#include "JFunc_void_UserTrackingMode.hpp"
|
|
111
126
|
#include "Camera.hpp"
|
|
112
127
|
#include <NitroModules/Promise.hpp>
|
|
113
128
|
#include <NitroModules/JPromise.hpp>
|
|
114
129
|
#include "JCamera.hpp"
|
|
115
130
|
#include "MapBoundaries.hpp"
|
|
116
131
|
#include "JMapBoundaries.hpp"
|
|
117
|
-
#include "EdgePadding.hpp"
|
|
118
|
-
#include "JEdgePadding.hpp"
|
|
119
132
|
#include "MarkerData.hpp"
|
|
120
133
|
#include "JMarkerData.hpp"
|
|
121
134
|
#include "MarkerConfig.hpp"
|
|
@@ -129,6 +142,12 @@ namespace margelo::nitro::nitromap { enum class MarkerAnimation; }
|
|
|
129
142
|
#include "JPriceMarkerStyle.hpp"
|
|
130
143
|
#include "MarkerAnimation.hpp"
|
|
131
144
|
#include "JMarkerAnimation.hpp"
|
|
145
|
+
#include "PolylineData.hpp"
|
|
146
|
+
#include "JPolylineData.hpp"
|
|
147
|
+
#include "PolygonData.hpp"
|
|
148
|
+
#include "JPolygonData.hpp"
|
|
149
|
+
#include "CircleData.hpp"
|
|
150
|
+
#include "JCircleData.hpp"
|
|
132
151
|
|
|
133
152
|
namespace margelo::nitro::nitromap {
|
|
134
153
|
|
|
@@ -177,6 +196,15 @@ namespace margelo::nitro::nitromap {
|
|
|
177
196
|
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JRegion> /* initialRegion */)>("setInitialRegion");
|
|
178
197
|
method(_javaPart, initialRegion.has_value() ? JRegion::fromCpp(initialRegion.value()) : nullptr);
|
|
179
198
|
}
|
|
199
|
+
std::optional<Region> JHybridNitroMapSpec::getRegion() {
|
|
200
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JRegion>()>("getRegion");
|
|
201
|
+
auto __result = method(_javaPart);
|
|
202
|
+
return __result != nullptr ? std::make_optional(__result->toCpp()) : std::nullopt;
|
|
203
|
+
}
|
|
204
|
+
void JHybridNitroMapSpec::setRegion(const std::optional<Region>& region) {
|
|
205
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JRegion> /* region */)>("setRegion");
|
|
206
|
+
method(_javaPart, region.has_value() ? JRegion::fromCpp(region.value()) : nullptr);
|
|
207
|
+
}
|
|
180
208
|
std::optional<bool> JHybridNitroMapSpec::getShowsUserLocation() {
|
|
181
209
|
static const auto method = javaClassStatic()->getMethod<jni::local_ref<jni::JBoolean>()>("getShowsUserLocation");
|
|
182
210
|
auto __result = method(_javaPart);
|
|
@@ -258,15 +286,6 @@ namespace margelo::nitro::nitromap {
|
|
|
258
286
|
return __array;
|
|
259
287
|
}() : nullptr);
|
|
260
288
|
}
|
|
261
|
-
std::optional<bool> JHybridNitroMapSpec::getShowsMyLocationButton() {
|
|
262
|
-
static const auto method = javaClassStatic()->getMethod<jni::local_ref<jni::JBoolean>()>("getShowsMyLocationButton");
|
|
263
|
-
auto __result = method(_javaPart);
|
|
264
|
-
return __result != nullptr ? std::make_optional(static_cast<bool>(__result->value())) : std::nullopt;
|
|
265
|
-
}
|
|
266
|
-
void JHybridNitroMapSpec::setShowsMyLocationButton(std::optional<bool> showsMyLocationButton) {
|
|
267
|
-
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<jni::JBoolean> /* showsMyLocationButton */)>("setShowsMyLocationButton");
|
|
268
|
-
method(_javaPart, showsMyLocationButton.has_value() ? jni::JBoolean::valueOf(showsMyLocationButton.value()) : nullptr);
|
|
269
|
-
}
|
|
270
289
|
std::optional<ClusterConfig> JHybridNitroMapSpec::getClusterConfig() {
|
|
271
290
|
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JClusterConfig>()>("getClusterConfig");
|
|
272
291
|
auto __result = method(_javaPart);
|
|
@@ -276,6 +295,60 @@ namespace margelo::nitro::nitromap {
|
|
|
276
295
|
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JClusterConfig> /* clusterConfig */)>("setClusterConfig");
|
|
277
296
|
method(_javaPart, clusterConfig.has_value() ? JClusterConfig::fromCpp(clusterConfig.value()) : nullptr);
|
|
278
297
|
}
|
|
298
|
+
EdgePadding JHybridNitroMapSpec::getMapPadding() {
|
|
299
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JEdgePadding>()>("getMapPadding");
|
|
300
|
+
auto __result = method(_javaPart);
|
|
301
|
+
return __result->toCpp();
|
|
302
|
+
}
|
|
303
|
+
void JHybridNitroMapSpec::setMapPadding(const EdgePadding& mapPadding) {
|
|
304
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JEdgePadding> /* mapPadding */)>("setMapPadding");
|
|
305
|
+
method(_javaPart, JEdgePadding::fromCpp(mapPadding));
|
|
306
|
+
}
|
|
307
|
+
std::optional<bool> JHybridNitroMapSpec::getShowsTraffic() {
|
|
308
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<jni::JBoolean>()>("getShowsTraffic");
|
|
309
|
+
auto __result = method(_javaPart);
|
|
310
|
+
return __result != nullptr ? std::make_optional(static_cast<bool>(__result->value())) : std::nullopt;
|
|
311
|
+
}
|
|
312
|
+
void JHybridNitroMapSpec::setShowsTraffic(std::optional<bool> showsTraffic) {
|
|
313
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<jni::JBoolean> /* showsTraffic */)>("setShowsTraffic");
|
|
314
|
+
method(_javaPart, showsTraffic.has_value() ? jni::JBoolean::valueOf(showsTraffic.value()) : nullptr);
|
|
315
|
+
}
|
|
316
|
+
std::optional<bool> JHybridNitroMapSpec::getShowsBuildings() {
|
|
317
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<jni::JBoolean>()>("getShowsBuildings");
|
|
318
|
+
auto __result = method(_javaPart);
|
|
319
|
+
return __result != nullptr ? std::make_optional(static_cast<bool>(__result->value())) : std::nullopt;
|
|
320
|
+
}
|
|
321
|
+
void JHybridNitroMapSpec::setShowsBuildings(std::optional<bool> showsBuildings) {
|
|
322
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<jni::JBoolean> /* showsBuildings */)>("setShowsBuildings");
|
|
323
|
+
method(_javaPart, showsBuildings.has_value() ? jni::JBoolean::valueOf(showsBuildings.value()) : nullptr);
|
|
324
|
+
}
|
|
325
|
+
std::optional<bool> JHybridNitroMapSpec::getShowsCompass() {
|
|
326
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<jni::JBoolean>()>("getShowsCompass");
|
|
327
|
+
auto __result = method(_javaPart);
|
|
328
|
+
return __result != nullptr ? std::make_optional(static_cast<bool>(__result->value())) : std::nullopt;
|
|
329
|
+
}
|
|
330
|
+
void JHybridNitroMapSpec::setShowsCompass(std::optional<bool> showsCompass) {
|
|
331
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<jni::JBoolean> /* showsCompass */)>("setShowsCompass");
|
|
332
|
+
method(_javaPart, showsCompass.has_value() ? jni::JBoolean::valueOf(showsCompass.value()) : nullptr);
|
|
333
|
+
}
|
|
334
|
+
double JHybridNitroMapSpec::getMinZoom() {
|
|
335
|
+
static const auto method = javaClassStatic()->getMethod<double()>("getMinZoom");
|
|
336
|
+
auto __result = method(_javaPart);
|
|
337
|
+
return __result;
|
|
338
|
+
}
|
|
339
|
+
void JHybridNitroMapSpec::setMinZoom(double minZoom) {
|
|
340
|
+
static const auto method = javaClassStatic()->getMethod<void(double /* minZoom */)>("setMinZoom");
|
|
341
|
+
method(_javaPart, minZoom);
|
|
342
|
+
}
|
|
343
|
+
double JHybridNitroMapSpec::getMaxZoom() {
|
|
344
|
+
static const auto method = javaClassStatic()->getMethod<double()>("getMaxZoom");
|
|
345
|
+
auto __result = method(_javaPart);
|
|
346
|
+
return __result;
|
|
347
|
+
}
|
|
348
|
+
void JHybridNitroMapSpec::setMaxZoom(double maxZoom) {
|
|
349
|
+
static const auto method = javaClassStatic()->getMethod<void(double /* maxZoom */)>("setMaxZoom");
|
|
350
|
+
method(_javaPart, maxZoom);
|
|
351
|
+
}
|
|
279
352
|
std::optional<bool> JHybridNitroMapSpec::getDarkMode() {
|
|
280
353
|
static const auto method = javaClassStatic()->getMethod<jni::local_ref<jni::JBoolean>()>("getDarkMode");
|
|
281
354
|
auto __result = method(_javaPart);
|
|
@@ -285,6 +358,42 @@ namespace margelo::nitro::nitromap {
|
|
|
285
358
|
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<jni::JBoolean> /* darkMode */)>("setDarkMode");
|
|
286
359
|
method(_javaPart, darkMode.has_value() ? jni::JBoolean::valueOf(darkMode.value()) : nullptr);
|
|
287
360
|
}
|
|
361
|
+
std::optional<UserTrackingMode> JHybridNitroMapSpec::getUserTrackingMode() {
|
|
362
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JUserTrackingMode>()>("getUserTrackingMode");
|
|
363
|
+
auto __result = method(_javaPart);
|
|
364
|
+
return __result != nullptr ? std::make_optional(__result->toCpp()) : std::nullopt;
|
|
365
|
+
}
|
|
366
|
+
void JHybridNitroMapSpec::setUserTrackingMode(std::optional<UserTrackingMode> userTrackingMode) {
|
|
367
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JUserTrackingMode> /* userTrackingMode */)>("setUserTrackingMode");
|
|
368
|
+
method(_javaPart, userTrackingMode.has_value() ? JUserTrackingMode::fromCpp(userTrackingMode.value()) : nullptr);
|
|
369
|
+
}
|
|
370
|
+
std::string JHybridNitroMapSpec::getUserLocationImage() {
|
|
371
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<jni::JString>()>("getUserLocationImage");
|
|
372
|
+
auto __result = method(_javaPart);
|
|
373
|
+
return __result->toStdString();
|
|
374
|
+
}
|
|
375
|
+
void JHybridNitroMapSpec::setUserLocationImage(const std::string& userLocationImage) {
|
|
376
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* userLocationImage */)>("setUserLocationImage");
|
|
377
|
+
method(_javaPart, jni::make_jstring(userLocationImage));
|
|
378
|
+
}
|
|
379
|
+
double JHybridNitroMapSpec::getUserLocationSize() {
|
|
380
|
+
static const auto method = javaClassStatic()->getMethod<double()>("getUserLocationSize");
|
|
381
|
+
auto __result = method(_javaPart);
|
|
382
|
+
return __result;
|
|
383
|
+
}
|
|
384
|
+
void JHybridNitroMapSpec::setUserLocationSize(double userLocationSize) {
|
|
385
|
+
static const auto method = javaClassStatic()->getMethod<void(double /* userLocationSize */)>("setUserLocationSize");
|
|
386
|
+
method(_javaPart, userLocationSize);
|
|
387
|
+
}
|
|
388
|
+
std::optional<Point> JHybridNitroMapSpec::getUserLocationAnchor() {
|
|
389
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JPoint>()>("getUserLocationAnchor");
|
|
390
|
+
auto __result = method(_javaPart);
|
|
391
|
+
return __result != nullptr ? std::make_optional(__result->toCpp()) : std::nullopt;
|
|
392
|
+
}
|
|
393
|
+
void JHybridNitroMapSpec::setUserLocationAnchor(const std::optional<Point>& userLocationAnchor) {
|
|
394
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JPoint> /* userLocationAnchor */)>("setUserLocationAnchor");
|
|
395
|
+
method(_javaPart, userLocationAnchor.has_value() ? JPoint::fromCpp(userLocationAnchor.value()) : nullptr);
|
|
396
|
+
}
|
|
288
397
|
std::optional<std::function<void(const MapPressEvent& /* event */)>> JHybridNitroMapSpec::getOnPress() {
|
|
289
398
|
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void_MapPressEvent::javaobject>()>("getOnPress_cxx");
|
|
290
399
|
auto __result = method(_javaPart);
|
|
@@ -455,6 +564,57 @@ namespace margelo::nitro::nitromap {
|
|
|
455
564
|
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_ClusterPressEvent::javaobject> /* onClusterPress */)>("setOnClusterPress_cxx");
|
|
456
565
|
method(_javaPart, onClusterPress.has_value() ? JFunc_void_ClusterPressEvent_cxx::fromCpp(onClusterPress.value()) : nullptr);
|
|
457
566
|
}
|
|
567
|
+
std::optional<std::function<void(const std::string& /* id */)>> JHybridNitroMapSpec::getOnPolylinePress() {
|
|
568
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void_std__string::javaobject>()>("getOnPolylinePress_cxx");
|
|
569
|
+
auto __result = method(_javaPart);
|
|
570
|
+
return __result != nullptr ? std::make_optional([&]() -> std::function<void(const std::string& /* id */)> {
|
|
571
|
+
if (__result->isInstanceOf(JFunc_void_std__string_cxx::javaClassStatic())) [[likely]] {
|
|
572
|
+
auto downcast = jni::static_ref_cast<JFunc_void_std__string_cxx::javaobject>(__result);
|
|
573
|
+
return downcast->cthis()->getFunction();
|
|
574
|
+
} else {
|
|
575
|
+
auto __resultRef = jni::make_global(__result);
|
|
576
|
+
return JNICallable<JFunc_void_std__string, void(std::string)>(std::move(__resultRef));
|
|
577
|
+
}
|
|
578
|
+
}()) : std::nullopt;
|
|
579
|
+
}
|
|
580
|
+
void JHybridNitroMapSpec::setOnPolylinePress(const std::optional<std::function<void(const std::string& /* id */)>>& onPolylinePress) {
|
|
581
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_std__string::javaobject> /* onPolylinePress */)>("setOnPolylinePress_cxx");
|
|
582
|
+
method(_javaPart, onPolylinePress.has_value() ? JFunc_void_std__string_cxx::fromCpp(onPolylinePress.value()) : nullptr);
|
|
583
|
+
}
|
|
584
|
+
std::optional<std::function<void(const std::string& /* id */)>> JHybridNitroMapSpec::getOnPolygonPress() {
|
|
585
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void_std__string::javaobject>()>("getOnPolygonPress_cxx");
|
|
586
|
+
auto __result = method(_javaPart);
|
|
587
|
+
return __result != nullptr ? std::make_optional([&]() -> std::function<void(const std::string& /* id */)> {
|
|
588
|
+
if (__result->isInstanceOf(JFunc_void_std__string_cxx::javaClassStatic())) [[likely]] {
|
|
589
|
+
auto downcast = jni::static_ref_cast<JFunc_void_std__string_cxx::javaobject>(__result);
|
|
590
|
+
return downcast->cthis()->getFunction();
|
|
591
|
+
} else {
|
|
592
|
+
auto __resultRef = jni::make_global(__result);
|
|
593
|
+
return JNICallable<JFunc_void_std__string, void(std::string)>(std::move(__resultRef));
|
|
594
|
+
}
|
|
595
|
+
}()) : std::nullopt;
|
|
596
|
+
}
|
|
597
|
+
void JHybridNitroMapSpec::setOnPolygonPress(const std::optional<std::function<void(const std::string& /* id */)>>& onPolygonPress) {
|
|
598
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_std__string::javaobject> /* onPolygonPress */)>("setOnPolygonPress_cxx");
|
|
599
|
+
method(_javaPart, onPolygonPress.has_value() ? JFunc_void_std__string_cxx::fromCpp(onPolygonPress.value()) : nullptr);
|
|
600
|
+
}
|
|
601
|
+
std::optional<std::function<void(const std::string& /* id */)>> JHybridNitroMapSpec::getOnCirclePress() {
|
|
602
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void_std__string::javaobject>()>("getOnCirclePress_cxx");
|
|
603
|
+
auto __result = method(_javaPart);
|
|
604
|
+
return __result != nullptr ? std::make_optional([&]() -> std::function<void(const std::string& /* id */)> {
|
|
605
|
+
if (__result->isInstanceOf(JFunc_void_std__string_cxx::javaClassStatic())) [[likely]] {
|
|
606
|
+
auto downcast = jni::static_ref_cast<JFunc_void_std__string_cxx::javaobject>(__result);
|
|
607
|
+
return downcast->cthis()->getFunction();
|
|
608
|
+
} else {
|
|
609
|
+
auto __resultRef = jni::make_global(__result);
|
|
610
|
+
return JNICallable<JFunc_void_std__string, void(std::string)>(std::move(__resultRef));
|
|
611
|
+
}
|
|
612
|
+
}()) : std::nullopt;
|
|
613
|
+
}
|
|
614
|
+
void JHybridNitroMapSpec::setOnCirclePress(const std::optional<std::function<void(const std::string& /* id */)>>& onCirclePress) {
|
|
615
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_std__string::javaobject> /* onCirclePress */)>("setOnCirclePress_cxx");
|
|
616
|
+
method(_javaPart, onCirclePress.has_value() ? JFunc_void_std__string_cxx::fromCpp(onCirclePress.value()) : nullptr);
|
|
617
|
+
}
|
|
458
618
|
std::optional<std::function<void(const MapError& /* error */)>> JHybridNitroMapSpec::getOnError() {
|
|
459
619
|
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void_MapError::javaobject>()>("getOnError_cxx");
|
|
460
620
|
auto __result = method(_javaPart);
|
|
@@ -472,6 +632,74 @@ namespace margelo::nitro::nitromap {
|
|
|
472
632
|
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_MapError::javaobject> /* onError */)>("setOnError_cxx");
|
|
473
633
|
method(_javaPart, onError.has_value() ? JFunc_void_MapError_cxx::fromCpp(onError.value()) : nullptr);
|
|
474
634
|
}
|
|
635
|
+
std::optional<std::function<void(const UserLocationChangeEvent& /* event */)>> JHybridNitroMapSpec::getOnUserLocationChange() {
|
|
636
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void_UserLocationChangeEvent::javaobject>()>("getOnUserLocationChange_cxx");
|
|
637
|
+
auto __result = method(_javaPart);
|
|
638
|
+
return __result != nullptr ? std::make_optional([&]() -> std::function<void(const UserLocationChangeEvent& /* event */)> {
|
|
639
|
+
if (__result->isInstanceOf(JFunc_void_UserLocationChangeEvent_cxx::javaClassStatic())) [[likely]] {
|
|
640
|
+
auto downcast = jni::static_ref_cast<JFunc_void_UserLocationChangeEvent_cxx::javaobject>(__result);
|
|
641
|
+
return downcast->cthis()->getFunction();
|
|
642
|
+
} else {
|
|
643
|
+
auto __resultRef = jni::make_global(__result);
|
|
644
|
+
return JNICallable<JFunc_void_UserLocationChangeEvent, void(UserLocationChangeEvent)>(std::move(__resultRef));
|
|
645
|
+
}
|
|
646
|
+
}()) : std::nullopt;
|
|
647
|
+
}
|
|
648
|
+
void JHybridNitroMapSpec::setOnUserLocationChange(const std::optional<std::function<void(const UserLocationChangeEvent& /* event */)>>& onUserLocationChange) {
|
|
649
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_UserLocationChangeEvent::javaobject> /* onUserLocationChange */)>("setOnUserLocationChange_cxx");
|
|
650
|
+
method(_javaPart, onUserLocationChange.has_value() ? JFunc_void_UserLocationChangeEvent_cxx::fromCpp(onUserLocationChange.value()) : nullptr);
|
|
651
|
+
}
|
|
652
|
+
std::optional<std::function<void(UserTrackingMode /* mode */)>> JHybridNitroMapSpec::getOnUserTrackingModeChange() {
|
|
653
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void_UserTrackingMode::javaobject>()>("getOnUserTrackingModeChange_cxx");
|
|
654
|
+
auto __result = method(_javaPart);
|
|
655
|
+
return __result != nullptr ? std::make_optional([&]() -> std::function<void(UserTrackingMode /* mode */)> {
|
|
656
|
+
if (__result->isInstanceOf(JFunc_void_UserTrackingMode_cxx::javaClassStatic())) [[likely]] {
|
|
657
|
+
auto downcast = jni::static_ref_cast<JFunc_void_UserTrackingMode_cxx::javaobject>(__result);
|
|
658
|
+
return downcast->cthis()->getFunction();
|
|
659
|
+
} else {
|
|
660
|
+
auto __resultRef = jni::make_global(__result);
|
|
661
|
+
return JNICallable<JFunc_void_UserTrackingMode, void(UserTrackingMode)>(std::move(__resultRef));
|
|
662
|
+
}
|
|
663
|
+
}()) : std::nullopt;
|
|
664
|
+
}
|
|
665
|
+
void JHybridNitroMapSpec::setOnUserTrackingModeChange(const std::optional<std::function<void(UserTrackingMode /* mode */)>>& onUserTrackingModeChange) {
|
|
666
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_UserTrackingMode::javaobject> /* onUserTrackingModeChange */)>("setOnUserTrackingModeChange_cxx");
|
|
667
|
+
method(_javaPart, onUserTrackingModeChange.has_value() ? JFunc_void_UserTrackingMode_cxx::fromCpp(onUserTrackingModeChange.value()) : nullptr);
|
|
668
|
+
}
|
|
669
|
+
std::optional<std::function<void(const MapError& /* error */)>> JHybridNitroMapSpec::getOnUserLocationError() {
|
|
670
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void_MapError::javaobject>()>("getOnUserLocationError_cxx");
|
|
671
|
+
auto __result = method(_javaPart);
|
|
672
|
+
return __result != nullptr ? std::make_optional([&]() -> std::function<void(const MapError& /* error */)> {
|
|
673
|
+
if (__result->isInstanceOf(JFunc_void_MapError_cxx::javaClassStatic())) [[likely]] {
|
|
674
|
+
auto downcast = jni::static_ref_cast<JFunc_void_MapError_cxx::javaobject>(__result);
|
|
675
|
+
return downcast->cthis()->getFunction();
|
|
676
|
+
} else {
|
|
677
|
+
auto __resultRef = jni::make_global(__result);
|
|
678
|
+
return JNICallable<JFunc_void_MapError, void(MapError)>(std::move(__resultRef));
|
|
679
|
+
}
|
|
680
|
+
}()) : std::nullopt;
|
|
681
|
+
}
|
|
682
|
+
void JHybridNitroMapSpec::setOnUserLocationError(const std::optional<std::function<void(const MapError& /* error */)>>& onUserLocationError) {
|
|
683
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void_MapError::javaobject> /* onUserLocationError */)>("setOnUserLocationError_cxx");
|
|
684
|
+
method(_javaPart, onUserLocationError.has_value() ? JFunc_void_MapError_cxx::fromCpp(onUserLocationError.value()) : nullptr);
|
|
685
|
+
}
|
|
686
|
+
std::optional<std::function<void()>> JHybridNitroMapSpec::getOnMapIdle() {
|
|
687
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JFunc_void::javaobject>()>("getOnMapIdle_cxx");
|
|
688
|
+
auto __result = method(_javaPart);
|
|
689
|
+
return __result != nullptr ? std::make_optional([&]() -> std::function<void()> {
|
|
690
|
+
if (__result->isInstanceOf(JFunc_void_cxx::javaClassStatic())) [[likely]] {
|
|
691
|
+
auto downcast = jni::static_ref_cast<JFunc_void_cxx::javaobject>(__result);
|
|
692
|
+
return downcast->cthis()->getFunction();
|
|
693
|
+
} else {
|
|
694
|
+
auto __resultRef = jni::make_global(__result);
|
|
695
|
+
return JNICallable<JFunc_void, void()>(std::move(__resultRef));
|
|
696
|
+
}
|
|
697
|
+
}()) : std::nullopt;
|
|
698
|
+
}
|
|
699
|
+
void JHybridNitroMapSpec::setOnMapIdle(const std::optional<std::function<void()>>& onMapIdle) {
|
|
700
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JFunc_void::javaobject> /* onMapIdle */)>("setOnMapIdle_cxx");
|
|
701
|
+
method(_javaPart, onMapIdle.has_value() ? JFunc_void_cxx::fromCpp(onMapIdle.value()) : nullptr);
|
|
702
|
+
}
|
|
475
703
|
|
|
476
704
|
// Methods
|
|
477
705
|
void JHybridNitroMapSpec::animateToRegion(const Region& region, std::optional<double> duration) {
|
|
@@ -491,6 +719,19 @@ namespace margelo::nitro::nitromap {
|
|
|
491
719
|
return __array;
|
|
492
720
|
}(), edgePadding.has_value() ? JEdgePadding::fromCpp(edgePadding.value()) : nullptr, animated.has_value() ? jni::JBoolean::valueOf(animated.value()) : nullptr);
|
|
493
721
|
}
|
|
722
|
+
void JHybridNitroMapSpec::fitToSuppliedMarkers(const std::vector<std::string>& markerIds, const std::optional<EdgePadding>& edgePadding, std::optional<bool> animated) {
|
|
723
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<jni::JArrayClass<jni::JString>> /* markerIds */, jni::alias_ref<JEdgePadding> /* edgePadding */, jni::alias_ref<jni::JBoolean> /* animated */)>("fitToSuppliedMarkers");
|
|
724
|
+
method(_javaPart, [&]() {
|
|
725
|
+
size_t __size = markerIds.size();
|
|
726
|
+
jni::local_ref<jni::JArrayClass<jni::JString>> __array = jni::JArrayClass<jni::JString>::newArray(__size);
|
|
727
|
+
for (size_t __i = 0; __i < __size; __i++) {
|
|
728
|
+
const auto& __element = markerIds[__i];
|
|
729
|
+
auto __elementJni = jni::make_jstring(__element);
|
|
730
|
+
__array->setElement(__i, *__elementJni);
|
|
731
|
+
}
|
|
732
|
+
return __array;
|
|
733
|
+
}(), edgePadding.has_value() ? JEdgePadding::fromCpp(edgePadding.value()) : nullptr, animated.has_value() ? jni::JBoolean::valueOf(animated.value()) : nullptr);
|
|
734
|
+
}
|
|
494
735
|
void JHybridNitroMapSpec::animateCamera(const Camera& camera, std::optional<double> duration) {
|
|
495
736
|
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JCamera> /* camera */, jni::alias_ref<jni::JDouble> /* duration */)>("animateCamera");
|
|
496
737
|
method(_javaPart, JCamera::fromCpp(camera), duration.has_value() ? jni::JDouble::valueOf(duration.value()) : nullptr);
|
|
@@ -544,6 +785,20 @@ namespace margelo::nitro::nitromap {
|
|
|
544
785
|
return __promise;
|
|
545
786
|
}();
|
|
546
787
|
}
|
|
788
|
+
void JHybridNitroMapSpec::centerOnUserLocation() {
|
|
789
|
+
static const auto method = javaClassStatic()->getMethod<void()>("centerOnUserLocation");
|
|
790
|
+
method(_javaPart);
|
|
791
|
+
}
|
|
792
|
+
Point JHybridNitroMapSpec::pointForCoordinate(const Coordinate& coordinate) {
|
|
793
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JPoint>(jni::alias_ref<JCoordinate> /* coordinate */)>("pointForCoordinate");
|
|
794
|
+
auto __result = method(_javaPart, JCoordinate::fromCpp(coordinate));
|
|
795
|
+
return __result->toCpp();
|
|
796
|
+
}
|
|
797
|
+
Coordinate JHybridNitroMapSpec::coordinateForPoint(const Point& point) {
|
|
798
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JCoordinate>(jni::alias_ref<JPoint> /* point */)>("coordinateForPoint");
|
|
799
|
+
auto __result = method(_javaPart, JPoint::fromCpp(point));
|
|
800
|
+
return __result->toCpp();
|
|
801
|
+
}
|
|
547
802
|
void JHybridNitroMapSpec::setIsDarkMode(bool enabled) {
|
|
548
803
|
static const auto method = javaClassStatic()->getMethod<void(jboolean /* enabled */)>("setIsDarkMode");
|
|
549
804
|
method(_javaPart, enabled);
|
|
@@ -577,6 +832,10 @@ namespace margelo::nitro::nitromap {
|
|
|
577
832
|
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* id */)>("selectMarker");
|
|
578
833
|
method(_javaPart, jni::make_jstring(id));
|
|
579
834
|
}
|
|
835
|
+
void JHybridNitroMapSpec::deselectMarker() {
|
|
836
|
+
static const auto method = javaClassStatic()->getMethod<void()>("deselectMarker");
|
|
837
|
+
method(_javaPart);
|
|
838
|
+
}
|
|
580
839
|
void JHybridNitroMapSpec::clearMarkers() {
|
|
581
840
|
static const auto method = javaClassStatic()->getMethod<void()>("clearMarkers");
|
|
582
841
|
method(_javaPart);
|
|
@@ -589,5 +848,53 @@ namespace margelo::nitro::nitromap {
|
|
|
589
848
|
static const auto method = javaClassStatic()->getMethod<void()>("refreshClusters");
|
|
590
849
|
method(_javaPart);
|
|
591
850
|
}
|
|
851
|
+
void JHybridNitroMapSpec::addPolyline(const PolylineData& polyline) {
|
|
852
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JPolylineData> /* polyline */)>("addPolyline");
|
|
853
|
+
method(_javaPart, JPolylineData::fromCpp(polyline));
|
|
854
|
+
}
|
|
855
|
+
void JHybridNitroMapSpec::updatePolyline(const PolylineData& polyline) {
|
|
856
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JPolylineData> /* polyline */)>("updatePolyline");
|
|
857
|
+
method(_javaPart, JPolylineData::fromCpp(polyline));
|
|
858
|
+
}
|
|
859
|
+
void JHybridNitroMapSpec::removePolyline(const std::string& id) {
|
|
860
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* id */)>("removePolyline");
|
|
861
|
+
method(_javaPart, jni::make_jstring(id));
|
|
862
|
+
}
|
|
863
|
+
void JHybridNitroMapSpec::clearPolylines() {
|
|
864
|
+
static const auto method = javaClassStatic()->getMethod<void()>("clearPolylines");
|
|
865
|
+
method(_javaPart);
|
|
866
|
+
}
|
|
867
|
+
void JHybridNitroMapSpec::addPolygon(const PolygonData& polygon) {
|
|
868
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JPolygonData> /* polygon */)>("addPolygon");
|
|
869
|
+
method(_javaPart, JPolygonData::fromCpp(polygon));
|
|
870
|
+
}
|
|
871
|
+
void JHybridNitroMapSpec::updatePolygon(const PolygonData& polygon) {
|
|
872
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JPolygonData> /* polygon */)>("updatePolygon");
|
|
873
|
+
method(_javaPart, JPolygonData::fromCpp(polygon));
|
|
874
|
+
}
|
|
875
|
+
void JHybridNitroMapSpec::removePolygon(const std::string& id) {
|
|
876
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* id */)>("removePolygon");
|
|
877
|
+
method(_javaPart, jni::make_jstring(id));
|
|
878
|
+
}
|
|
879
|
+
void JHybridNitroMapSpec::clearPolygons() {
|
|
880
|
+
static const auto method = javaClassStatic()->getMethod<void()>("clearPolygons");
|
|
881
|
+
method(_javaPart);
|
|
882
|
+
}
|
|
883
|
+
void JHybridNitroMapSpec::addCircle(const CircleData& circle) {
|
|
884
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JCircleData> /* circle */)>("addCircle");
|
|
885
|
+
method(_javaPart, JCircleData::fromCpp(circle));
|
|
886
|
+
}
|
|
887
|
+
void JHybridNitroMapSpec::updateCircle(const CircleData& circle) {
|
|
888
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JCircleData> /* circle */)>("updateCircle");
|
|
889
|
+
method(_javaPart, JCircleData::fromCpp(circle));
|
|
890
|
+
}
|
|
891
|
+
void JHybridNitroMapSpec::removeCircle(const std::string& id) {
|
|
892
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* id */)>("removeCircle");
|
|
893
|
+
method(_javaPart, jni::make_jstring(id));
|
|
894
|
+
}
|
|
895
|
+
void JHybridNitroMapSpec::clearCircles() {
|
|
896
|
+
static const auto method = javaClassStatic()->getMethod<void()>("clearCircles");
|
|
897
|
+
method(_javaPart);
|
|
898
|
+
}
|
|
592
899
|
|
|
593
900
|
} // namespace margelo::nitro::nitromap
|
|
@@ -54,6 +54,8 @@ namespace margelo::nitro::nitromap {
|
|
|
54
54
|
void setProvider(std::optional<MapProvider> provider) override;
|
|
55
55
|
std::optional<Region> getInitialRegion() override;
|
|
56
56
|
void setInitialRegion(const std::optional<Region>& initialRegion) override;
|
|
57
|
+
std::optional<Region> getRegion() override;
|
|
58
|
+
void setRegion(const std::optional<Region>& region) override;
|
|
57
59
|
std::optional<bool> getShowsUserLocation() override;
|
|
58
60
|
void setShowsUserLocation(std::optional<bool> showsUserLocation) override;
|
|
59
61
|
std::optional<bool> getZoomEnabled() override;
|
|
@@ -68,12 +70,30 @@ namespace margelo::nitro::nitromap {
|
|
|
68
70
|
void setMapType(std::optional<MapType> mapType) override;
|
|
69
71
|
std::optional<std::vector<MapStyleElement>> getCustomMapStyle() override;
|
|
70
72
|
void setCustomMapStyle(const std::optional<std::vector<MapStyleElement>>& customMapStyle) override;
|
|
71
|
-
std::optional<bool> getShowsMyLocationButton() override;
|
|
72
|
-
void setShowsMyLocationButton(std::optional<bool> showsMyLocationButton) override;
|
|
73
73
|
std::optional<ClusterConfig> getClusterConfig() override;
|
|
74
74
|
void setClusterConfig(const std::optional<ClusterConfig>& clusterConfig) override;
|
|
75
|
+
EdgePadding getMapPadding() override;
|
|
76
|
+
void setMapPadding(const EdgePadding& mapPadding) override;
|
|
77
|
+
std::optional<bool> getShowsTraffic() override;
|
|
78
|
+
void setShowsTraffic(std::optional<bool> showsTraffic) override;
|
|
79
|
+
std::optional<bool> getShowsBuildings() override;
|
|
80
|
+
void setShowsBuildings(std::optional<bool> showsBuildings) override;
|
|
81
|
+
std::optional<bool> getShowsCompass() override;
|
|
82
|
+
void setShowsCompass(std::optional<bool> showsCompass) override;
|
|
83
|
+
double getMinZoom() override;
|
|
84
|
+
void setMinZoom(double minZoom) override;
|
|
85
|
+
double getMaxZoom() override;
|
|
86
|
+
void setMaxZoom(double maxZoom) override;
|
|
75
87
|
std::optional<bool> getDarkMode() override;
|
|
76
88
|
void setDarkMode(std::optional<bool> darkMode) override;
|
|
89
|
+
std::optional<UserTrackingMode> getUserTrackingMode() override;
|
|
90
|
+
void setUserTrackingMode(std::optional<UserTrackingMode> userTrackingMode) override;
|
|
91
|
+
std::string getUserLocationImage() override;
|
|
92
|
+
void setUserLocationImage(const std::string& userLocationImage) override;
|
|
93
|
+
double getUserLocationSize() override;
|
|
94
|
+
void setUserLocationSize(double userLocationSize) override;
|
|
95
|
+
std::optional<Point> getUserLocationAnchor() override;
|
|
96
|
+
void setUserLocationAnchor(const std::optional<Point>& userLocationAnchor) override;
|
|
77
97
|
std::optional<std::function<void(const MapPressEvent& /* event */)>> getOnPress() override;
|
|
78
98
|
void setOnPress(const std::optional<std::function<void(const MapPressEvent& /* event */)>>& onPress) override;
|
|
79
99
|
std::optional<std::function<void(const MapPressEvent& /* event */)>> getOnLongPress() override;
|
|
@@ -94,27 +114,58 @@ namespace margelo::nitro::nitromap {
|
|
|
94
114
|
void setOnMarkerDragEnd(const std::optional<std::function<void(const MarkerDragEvent& /* event */)>>& onMarkerDragEnd) override;
|
|
95
115
|
std::optional<std::function<void(const ClusterPressEvent& /* event */)>> getOnClusterPress() override;
|
|
96
116
|
void setOnClusterPress(const std::optional<std::function<void(const ClusterPressEvent& /* event */)>>& onClusterPress) override;
|
|
117
|
+
std::optional<std::function<void(const std::string& /* id */)>> getOnPolylinePress() override;
|
|
118
|
+
void setOnPolylinePress(const std::optional<std::function<void(const std::string& /* id */)>>& onPolylinePress) override;
|
|
119
|
+
std::optional<std::function<void(const std::string& /* id */)>> getOnPolygonPress() override;
|
|
120
|
+
void setOnPolygonPress(const std::optional<std::function<void(const std::string& /* id */)>>& onPolygonPress) override;
|
|
121
|
+
std::optional<std::function<void(const std::string& /* id */)>> getOnCirclePress() override;
|
|
122
|
+
void setOnCirclePress(const std::optional<std::function<void(const std::string& /* id */)>>& onCirclePress) override;
|
|
97
123
|
std::optional<std::function<void(const MapError& /* error */)>> getOnError() override;
|
|
98
124
|
void setOnError(const std::optional<std::function<void(const MapError& /* error */)>>& onError) override;
|
|
125
|
+
std::optional<std::function<void(const UserLocationChangeEvent& /* event */)>> getOnUserLocationChange() override;
|
|
126
|
+
void setOnUserLocationChange(const std::optional<std::function<void(const UserLocationChangeEvent& /* event */)>>& onUserLocationChange) override;
|
|
127
|
+
std::optional<std::function<void(UserTrackingMode /* mode */)>> getOnUserTrackingModeChange() override;
|
|
128
|
+
void setOnUserTrackingModeChange(const std::optional<std::function<void(UserTrackingMode /* mode */)>>& onUserTrackingModeChange) override;
|
|
129
|
+
std::optional<std::function<void(const MapError& /* error */)>> getOnUserLocationError() override;
|
|
130
|
+
void setOnUserLocationError(const std::optional<std::function<void(const MapError& /* error */)>>& onUserLocationError) override;
|
|
131
|
+
std::optional<std::function<void()>> getOnMapIdle() override;
|
|
132
|
+
void setOnMapIdle(const std::optional<std::function<void()>>& onMapIdle) override;
|
|
99
133
|
|
|
100
134
|
public:
|
|
101
135
|
// Methods
|
|
102
136
|
void animateToRegion(const Region& region, std::optional<double> duration) override;
|
|
103
137
|
void fitToCoordinates(const std::vector<Coordinate>& coordinates, const std::optional<EdgePadding>& edgePadding, std::optional<bool> animated) override;
|
|
138
|
+
void fitToSuppliedMarkers(const std::vector<std::string>& markerIds, const std::optional<EdgePadding>& edgePadding, std::optional<bool> animated) override;
|
|
104
139
|
void animateCamera(const Camera& camera, std::optional<double> duration) override;
|
|
105
140
|
std::shared_ptr<Promise<Camera>> getCamera() override;
|
|
106
141
|
void setCamera(const Camera& camera) override;
|
|
107
142
|
void setMapStyle(const std::optional<std::vector<MapStyleElement>>& style) override;
|
|
108
143
|
std::shared_ptr<Promise<MapBoundaries>> getMapBoundaries() override;
|
|
144
|
+
void centerOnUserLocation() override;
|
|
145
|
+
Point pointForCoordinate(const Coordinate& coordinate) override;
|
|
146
|
+
Coordinate coordinateForPoint(const Point& point) override;
|
|
109
147
|
void setIsDarkMode(bool enabled) override;
|
|
110
148
|
void addMarker(const MarkerData& marker) override;
|
|
111
149
|
void addMarkers(const std::vector<MarkerData>& markers) override;
|
|
112
150
|
void updateMarker(const MarkerData& marker) override;
|
|
113
151
|
void removeMarker(const std::string& id) override;
|
|
114
152
|
void selectMarker(const std::string& id) override;
|
|
153
|
+
void deselectMarker() override;
|
|
115
154
|
void clearMarkers() override;
|
|
116
155
|
void setClusteringEnabled(bool enabled) override;
|
|
117
156
|
void refreshClusters() override;
|
|
157
|
+
void addPolyline(const PolylineData& polyline) override;
|
|
158
|
+
void updatePolyline(const PolylineData& polyline) override;
|
|
159
|
+
void removePolyline(const std::string& id) override;
|
|
160
|
+
void clearPolylines() override;
|
|
161
|
+
void addPolygon(const PolygonData& polygon) override;
|
|
162
|
+
void updatePolygon(const PolygonData& polygon) override;
|
|
163
|
+
void removePolygon(const std::string& id) override;
|
|
164
|
+
void clearPolygons() override;
|
|
165
|
+
void addCircle(const CircleData& circle) override;
|
|
166
|
+
void updateCircle(const CircleData& circle) override;
|
|
167
|
+
void removeCircle(const std::string& id) override;
|
|
168
|
+
void clearCircles() override;
|
|
118
169
|
|
|
119
170
|
private:
|
|
120
171
|
friend HybridBase;
|
|
@@ -42,16 +42,13 @@ namespace margelo::nitro::nitromap {
|
|
|
42
42
|
static jni::alias_ref<JMarkerAnimation> fromCpp(MarkerAnimation value) {
|
|
43
43
|
static const auto clazz = javaClassStatic();
|
|
44
44
|
static const auto fieldNONE = clazz->getStaticField<JMarkerAnimation>("NONE");
|
|
45
|
-
static const auto
|
|
46
|
-
static const auto fieldFADEIN = clazz->getStaticField<JMarkerAnimation>("FADEIN");
|
|
45
|
+
static const auto fieldAPPEAR = clazz->getStaticField<JMarkerAnimation>("APPEAR");
|
|
47
46
|
|
|
48
47
|
switch (value) {
|
|
49
48
|
case MarkerAnimation::NONE:
|
|
50
49
|
return clazz->getStaticFieldValue(fieldNONE);
|
|
51
|
-
case MarkerAnimation::
|
|
52
|
-
return clazz->getStaticFieldValue(
|
|
53
|
-
case MarkerAnimation::FADEIN:
|
|
54
|
-
return clazz->getStaticFieldValue(fieldFADEIN);
|
|
50
|
+
case MarkerAnimation::APPEAR:
|
|
51
|
+
return clazz->getStaticFieldValue(fieldAPPEAR);
|
|
55
52
|
default:
|
|
56
53
|
std::string stringValue = std::to_string(static_cast<int>(value));
|
|
57
54
|
throw std::invalid_argument("Invalid enum value (" + stringValue + "!");
|