| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
|
|
|
| |
Moved feature selection to the context menu and restored the press gesture for dropping a pin. Bust complex features into simple shapes to feed into MGLMapView as overlays.
|
|
|
|
| |
Ignore any multipolyline, multipolygon, or shape collection object passed into -addAnnotation: or -addAnnotations:. Previously, these methods broke apart the compound shape into its constituent shapes in order to recursively add them to the map. But that broke assumptions about a one-to-one correspondence between annotations and their contexts during selection and deletion.
|
|
|
|
| |
Removed a level of indirection when creating Objective-C collections from C++ collections. Adopted mbgl typedefs for geometry.hpp types. Factored out MGLPolygon construction.
|
|
|
|
|
|
|
|
| |
MGLPolygon (and by extension MGLMultiPolygon) now supports interior rings. The data is preserved in feature querying results, and interior rings are respected when adding polygon overlays to the map.
Fixes #1729.
[ios, osx] Updated changelog
|
| |
|
|
|
|
| |
Made writability of MGLFeature properties private, to avoid having to awkwardly explain that changes to the properties don’t change the map (maybe someday they will). This allows the identifier and attributes to be set in only one place, avoiding copy-pasta.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added methods to MGLMapView that return the rendered features at a visible point or within a visible rectangle on the map, optionally restricted to a set of layers, plus voluminous documentation.
Added several new geometry classes corresponding to distinct geometry types supported by geometry.hpp. Added parallel “feature” classes to represent these geometries along with tags (IDs) and attributes (properties) from the source.
Grouped classes in the Foundation and SDK groups by theme.
In iosapp, dropped pins’ callout views now display the name of the topmost named feature at that point.
In osxapp, a long press on the map highlights the features under the cursor. Dropping a pin via the menu or context menu item shows the usual dropped pin, but the pin’s title is now the name of a feature under the cursor, if available, rather than “Dropped Pin”.
Fixes the iOS/OS X side of #352.
|
|
|
| |
Speculatively fixes #511, where apps mistakenly backup the offline/ambient cache.
|
|
|
| |
Bounds should always be in NE, SW order — any other coordinate order (e.g., NW, SE) will give false results.
|
| |
|
|\ |
|
| |
| |
| |
| |
| |
| | |
Revised style descriptions to be more consistent with how the styles are described on www.mapbox.com.
Cherry-picked from 5035dc8418d931551bd58360bc82de2ae34cb066.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Renamed MGLStyleCurrentVersion to MGLStyleDefaultVersion to emphasize the constant’s role as an indicator of the default version used by SDK classes, which may be behind depending on release schedules. In the documentation for each style URL method, include the actual version number instead of the constant. In unit tests, verify that this documentation is in sync with the constant.
Link each style URL method’s documentation to a forthcoming webpage on mapbox.com that describes the style in rich detail.
Cherry-picked from 2ec95bc490c5793b7b8a3aa9999f48d196ca8085.
|
| |
| |
| |
| |
| |
| | |
The style ID has also changed, but the unversioned method will continue to point to the old v8 style ID.
Cherry-picked from 5ccb43477fc1d2028aef283d0db64848ebc9a347.
|
| |
| |
| |
| | |
Cherry-picked from 4a112c00f1634be40d10aa4797ac8e9262b8711a.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Updated default styles from v8 to v9. Deprecated the MGLMapView class methods in favor of new methods that take a version parameter. Deprecated Emerald outright in favor of Outdoors. Replaced usage of the unversioned MGLStyle methods with the corresponding versioned methods and MGLStyleCurrentVersion to ensure consistency.
Expanded MGLStyle unit tests to also assert that MGLStyle has the right number of style URL methods and that they’re all public. Linked the OS X SDK unit test bundle to libmbgl-core.a. Removed an unnecessary dependency on osxapp.
Replaced Emerald with Outdoors in iosapp and osxapp.
Fixes the iOS and OS X side of #4577 and #4702.
Cherry-picked from 2a4eeadb295775236fe1a89b50f9179b790b127a.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Replaced Markdown syntax with HTML syntax for hyperlinks in documentation comments. HTML links work both inside Xcode (whether Objective-C or Swift) and on the Web (via jazzy).
Fixes #3961.
Cherry-picked from de0705c7ede7fea5980ed220a1160085630bd89e.
|
| |
| |
| |
| | |
Reformatted documentation comments in public headers in the OS X SDK and public headers shared between the iOS and OS X SDKs to wrap at column 80 and avoid excessive indentation that causes SourceKitten to detect code blocks.
|
| |
| |
| |
| | |
Revised style descriptions to be more consistent with how the styles are described on www.mapbox.com.
|
| |
| |
| |
| |
| |
| | |
Renamed MGLStyleCurrentVersion to MGLStyleDefaultVersion to emphasize the constant’s role as an indicator of the default version used by SDK classes, which may be behind depending on release schedules. In the documentation for each style URL method, include the actual version number instead of the constant. In unit tests, verify that this documentation is in sync with the constant.
Link each style URL method’s documentation to a forthcoming webpage on mapbox.com that describes the style in rich detail.
|
| |
| |
| |
| | |
The style ID has also changed, but the unversioned method will continue to point to the old v8 style ID.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Updated default styles from v8 to v9. Deprecated the MGLMapView class methods in favor of new methods that take a version parameter. Deprecated Emerald outright in favor of Outdoors. Replaced usage of the unversioned MGLStyle methods with the corresponding versioned methods and MGLStyleCurrentVersion to ensure consistency.
Expanded MGLStyle unit tests to also assert that MGLStyle has the right number of style URL methods and that they’re all public. Linked the OS X SDK unit test bundle to libmbgl-core.a. Removed an unnecessary dependency on osxapp.
Replaced Emerald with Outdoors in iosapp and osxapp.
Fixes the iOS and OS X side of #4577 and #4702.
|
| | |
|
| |
| |
| |
| | |
Updated the MGLOfflinePackProgress boxing test to test the two new fields. Wordsmithed the documentation a bit. Updated the changelog.
|
| | |
|
| | |
|
| |
| |
| |
| | |
Fixed an issue causing angles that are multiples of 360°, such as 720°, to be described as 0 o’clock. Fixed a crash when a compass direction is close enough to 360° to round up to 360°.
|
| |
| |
| |
| | |
Replaced the iOS-specific ilocalize make rule with a genstrings make rule that creates iOS, OS X, and shared strings files. Moved the override English .stringsdict file under darwin/resources/. Made the default OS X callout view XIB localizable. Made some hard-coded strings in the OS X SDK source localizable.
|
| | |
|
| |
| |
| |
| |
| |
| | |
Assigned unique IDs to localizable English strings in code.
Made iosapp non-localizable. For the time being, it isn’t worth the trouble to localize more strings for this demo application than for the SDK itself.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Long unit style isn’t intended to be spelled out, so the clock and coordinate direction formatters now use numerals for long unit style, differing from medium unit style in less drastic ways. The locale no longer needs to be exposed, since it’ll always match the overall string’s locale. Added support to the coordinate formatter for different unit styles. Made minutes and seconds of arc optional.
Maintain strings for darwin/ formatter classes in a separate Foundation strings table that can be shared between the iOS and OS X SDKs. Added an English .stringsdict override that correctly pluralizes units.
Capitalize osxapp window titles, now that they spell out the directions.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Made storyboards and strings throughout the SDK and iosapp localizable. Replaced the compass image with an unlabeled image. Draw a localizable string atop it at runtime.
Redefined NSLocalizedString() and NSLocalizedStringFromTable() macros to look at the SDK bundle rather than the main application bundle. This redefinition has no effect on the host application, because it’s in an internal header. That header must be included in all files that contain localizable strings. See NSBundle+MGLAdditions.h for a full explanation.
Added a make rule that runs genstrings and ensures UTF-8 output (since genstrings insists on UTF-16).
Use MGLCoordinateFormatter in iosapp for dropped pin callouts. Rely on subclasses of MGLPointAnnotation instead of annotation titles to distinguish between different kinds of point annotations.
|
| |
| |
| |
| |
| |
| | |
Also updated various project references to be group-relative, so Xcode chooses the right directory by default when adding a new file.
Fixes #4770.
|
| |
| |
| |
| | |
Consolidated NSValue categories to work around realm/jazzy#539. Documented MGLErrorCode. Moved jazzy configuration file into platform/ios/. Removed redundant include/Mapbox.h that was only being used by jazzy, now that the static frameworks’s umbrella header is based on that of the dynamic framework. Moved framework/Mapbox.h to include/Mapbox.h for consistency.
|
| |
| |
| |
| | |
Split MGLDirectionFormatter into MGLClockDirectionFormatter, which specializes in clock positions, and MGLCompassDirectionFormatter, which boxes the compass. This neatly avoids any confusion that might arise if the developer fails to read the documentation and thinks the original unified formatter can convert between the two types of directions.
|
| |
| |
| |
| | |
Implemented an NSFormatter for formatting CLLocationDirection values as localizable display strings. The formatter supports both absolute compass directions, such as “south”, and relative “clock” directions, such as “6 o’clock”.
|
| |
| |
| |
| |
| |
| | |
Added a degree-minute-second coordinate formatter for general use. Use this formatter in iosapp and osxapp.
Added unit tests for the coordinate formatter and for round-tripping geometry types through NSValue.
|
| |
| |
| |
| |
| |
| | |
Added category methods on NSValue for converting to and from the structure types defined in MGLGeometry.h.
Fixes #4485.
|
| |
| |
| |
| |
| |
| | |
Replaced Markdown syntax with HTML syntax for hyperlinks in documentation comments. HTML links work both inside Xcode (whether Objective-C or Swift) and on the Web (via jazzy).
Fixes #3961.
|
| | |
|
| |
| |
| |
| | |
Fixes #3997.
|
| |
| |
| |
| | |
Now that #4641 has removed the prohibition against C99 extensions, this change removes many pragma statements that suppress warnings about variadic macros and designated initializers. Designated initializers and Elvis operators have been introduced wherever appropriate.
|
| |
| |
| |
| |
| |
| | |
For some reason, the SDK tests are less accurate when run on the command line than when run in Xcode or on OS X.
Also fixed unused variable warnings in the tests.
|
| |
| |
| |
| |
| |
| | |
The iOS and OS X SDKs now share a non-UI test bundle. Moved the iOS UI test bundle into a uitest/ subdirectory and moved the OS X SDK tests into the darwin/ subdirectory.
Upgraded KIF to v3.4.2.
|
| |
| |
| |
| |
| |
| | |
Xcode’s static library template comes with the -ObjC linker flag by default. Instead of removing that flag, this change removes the various imperfect workarounds we’ve been using to ensure that private SDK categories link. Given the size decrease in this static library since #2966 was fixed, we should have room to spare for the more straightforward approach. Moreover, an application that uses MGLMapView in a storyboard no longer needs to add -ObjC to the application target, which bloated the entire application, including other frameworks that had no need for -ObjC.
-ObjC isn’t even needed for dynamic frameworks, and the OS X SDK is only built as a dynamic framework.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Added a new Cocoa Touch dynamic framework target and Cocoa Touch static library target to the main iOS Xcode project. The targets are based on the templates provided by Xcode. They contain headers and source files in the darwin/ and ios/ subdirectories. Headers are explicitly marked public or project-internal instead of implicitly by subdirectory.
The SDK targets have a few dependencies that are managed by mason. Transform the config.gypi generated by configure into an .xcconfig file that Xcode uses to fill in compiler and linker flags.
Removed the iossdk target from platform.gypi and pared down the platform-lib target. make iproj opens the overall Xcode workspace instead of just the core project.
Resolved some warnings that are only now appearing because we’re using the standard warning and error flags instead of the pedantic and somewhat inappropriate flags that were forced by the gyp configuration files. Removed a console message informing developers of a long-ago deleted delegate method; the message was triggering a “selector not found” warning. Conditionalized some deprecated symbol usage that’s still needed for the static framework but not the dynamic framework, due to differing minimum deployment targets.
Added a build phase to the static library target that copies headers for use with the static library itself. This would allow us to potentially include a header in the dynamic framework but not the static library and vice-versa.
Updated the changelog to note that unused SVG files have been removed from the distribution.
|