Giter Club home page Giter Club logo

arcgis-maps-sdk-toolkit-qt's Introduction

ArcGIS Maps SDK for Qt Toolkit

API reference Current release

Introduction

This toolkit is an open source resource intended for use with the ArcGIS Maps SDK for Qt. It provides ready made components to complement mapping and GIS applications. Because it is open source you are encouraged to modify these tools and add your own.

Resources

Issues

Find a bug or want to request a new feature? Please let us know by submitting an issue.

Contributing

Anyone and everyone is welcome to contribute.

Contributors

All Contributors

Lucas Danzinger
Esri Member
Lucas Danzinger
James Ballard
Esri Member
James Ballard
Luke Smallwood
Esri Member
Luke Smallwood
Guillaume Belz
Esri Member
Guillaume Belz
Archibald Neil MacDonald
Esri Member
Archibald Neil MacDonald
Thomas Dunn
Esri Member
Thomas Dunn
Ryan Kim
Esri Member
Ryan Kim
Nandini
Esri Member
Nandini
Siddesh Pillai
Esri Member
Siddesh Pillai
Koushik Hajra
Esri Member
Koushik Hajra
Gela
Esri Member
Gela
Alessio Williams Gava
Esri Member
Alessio Williams Gava
Ryan Kim

Ryan Kim
Andrew Bladon
Esri Member
Andrew Bladon
Jared Caccamo
Esri Member
Jared Caccamo
Márton Feigl
Esri Member
Márton Feigl
John Foster
Esri Member
John Foster
Nathan Castle
Esri Member
Nathan Castle
Elliot Morris
Esri Member
Elliot Morris
Tanner Yould
Esri Member
Tanner Yould
Elvin Slavik

Elvin Slavik
Gareth Walters
Esri Member
Gareth Walters
Gary Sheppard

Gary Sheppard
Shobana Suresh
Esri Member
Shobana Suresh

Licensing

Copyright 2019-2022 Esri

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

A copy of the license is available in the repository's LICENSE file.

Some files (ios_config.prf) are from the Qt SDK and modified to support the Toolkit. See https://www.qt.io/terms-conditions/ for license details for those files.

arcgis-maps-sdk-toolkit-qt's People

Contributors

aji13187 avatar andrewbladon avatar anmacdonald avatar annika-oeth avatar bri12415 avatar ecmorris avatar guillaumebelz avatar jamesmballard avatar jared-2016 avatar jf990 avatar khajra avatar ldanzinger avatar lsmallwood avatar mfeigl avatar mrwillyees avatar nandinirao avatar ncastle1 avatar paulallansturm avatar ryankim86 avatar ryankim923 avatar shobanasuresh avatar sidopillai avatar spatialdude avatar tanneryould avatar tdunn avatar waltersgareth avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

arcgis-maps-sdk-toolkit-qt's Issues

Support `QtLocation` API

Qt 6.5 re-introduced the the Location API as a technology preview..

The current (esri's one) SDK is very cumbersome and not as flexible as apposed to the official (Qt Location API) one.

i.e in order to draw a simple graphic on the map and handle touch events from it you need to implement
all this mess https://github.com/Esri/arcgis-maps-sdk-samples-qt/blob/v.next/ArcGISRuntimeSDKQt_CppSamples/DisplayInformation/IdentifyGraphics/IdentifyGraphics.cpp

While with QtLocation API it is as simple as creating a MapQuickItem with some MouseHandler .

SearchboxExample.qml using incorrect status check

onFindStatusChanged is not catching the find results although the status change is signaled with 2. it appears findStatus === Locator.FindComplete is not working. I think it should be findStatus === Enums.FindStatusCompleted. (Likewise for the error condition)

BasemapGallery

As a user... I want to be able to select a basemap from a list and apply it to my map or scene.

Min-ship (High Priority):

  • Either a gridview or listview of basemaps. This can be platform specific
  • each item will show the name and thumbnail. Default thumbnail will be shown if nothing is available (some TPKs might not have)
  • Without any configuration, should support displaying a number of the most common basemaps in a gallery view
  • Works with API Keys
  • when user selects a basemap, the current map or scene's basemap will be switched to the selected basemap (works in 2D & 3D) -- Note - 3D does not support vector basemaps at the moment

Nice-to-haves (moderate priority):

  • if user is signed into portal, they should see their org's configured basemap list instead of our default
  • user can optionally create their own list of basemaps (local or online) in code, and display those in the list

Here is the JavaScript widget for BasemapGallery - https://developers.arcgis.com/javascript/latest/sample-code/widgets-basemapgallery/

image

image

image

image

Q_OBJECT in comment breaks AutoMoc in CMake

While this toolkit doesn't include CMake support yet, this might save someone a lot of frustration in the future.

The Problem

In the following code snippet, Q_OBJECT is embedded in the comment block (line 46). This unfortunately confuses AutoMoc into thinking it's a real class and a valid macro reference (I'm guessing the AutoMoc parser doesn't keep track of comment blocks).

Minor aside: typo on line 49, should be CONSTANT

https://github.com/Esri/arcgis-runtime-toolkit-qt/blob/5c6f5abc3ad2f95e32dc9239782a4c2f7e23eecd/uitools/cpp/Esri/ArcGISRuntime/Toolkit/Internal/GenericListModel.cpp#L26-L52

Output error from build:

FAILED: Display/Resources/ArcGISToolkitPlugin_autogen/timestamp Display/Resources/ArcGISToolkitPlugin_autogen/mocs_compilation.cpp C:/Workspace/C++/Project/_build/debug/Display/Resources/ArcGISToolkitPlugin_autogen/timestamp C:/Workspace/C++/Project/_build/debug/Display/Resources/ArcGISToolkitPlugin_autogen/mocs_compilation.cpp 
cmd.exe /C "cd /D C:\Workspace\C++\Project\_build\debug\Display\Resources && "C:\Program Files\JetBrains\CLion 2021.1.1\bin\cmake\win\bin\cmake.exe" -E cmake_autogen C:/Workspace/C++/Project/_build/debug/Display/Resources/CMakeFiles/ArcGISToolkitPlugin_autogen.dir/AutogenInfo.json Debug && "C:\Program Files\JetBrains\CLion 2021.1.1\bin\cmake\win\bin\cmake.exe" -E touch C:/Workspace/C++/Project/_build/debug/Display/Resources/ArcGISToolkitPlugin_autogen/timestamp && "C:\Program Files\JetBrains\CLion 2021.1.1\bin\cmake\win\bin\cmake.exe" -E cmake_transform_depfile Ninja gccdepfile C:/Workspace/C++/Project C:/Workspace/C++/Project/Display/Resources C:/Workspace/C++/Project/_build/debug C:/Workspace/C++/Project/_build/debug/Display/Resources C:/Workspace/C++/Project/_build/debug/Display/Resources/ArcGISToolkitPlugin_autogen/deps C:/Workspace/C++/Project/_build/debug/CMakeFiles/d/52ce3b2ef2644acdd9502b46303cbead86a354f588258b8d45cfd10d8f3cf3ed.d"


AutoMoc error
 -------------
 "SRC:/Display/Resources/arcgis-runtime-toolkit-qt/uitools/cpp/Esri/ArcGISRuntime/Toolkit/Internal/GenericListModel.cpp"
 contains a "Q_OBJECT" macro, but does not include "GenericListModel.moc"!
 Consider to
   - add #include "GenericListModel.moc"
   - enable SKIP_AUTOMOC for this file

Workaround

Removing Q_OBJECT, or otherwise invalidating the line inside the comment allows AutoMoc to complete successfully.

Environment

OS: Windows 11

Versions:

  • arcgis-runtime-toolkit-qt 100.13.0.final
  • ArcGIS Runtime SDK for Qt 100.13.0
  • Qt 5.15.2
  • CMake 3.21.1 (using the Ninja generator)
  • Clang 12.0.0

Below is the CMakeLists.txt file I'm using. I've added this repo as a submodule to my project and the CMake sits one directory up from it. My project uses add_subdirectory to pull it in. To find the runtime itself, I use the cmake file provided in the ideintegration directory.

set(ModuleName ArcGISToolkitPlugin)

set(UIToolsPath     ${CMAKE_CURRENT_SOURCE_DIR}/arcgis-runtime-toolkit-qt/uitools)
set(RegisterPath    ${UIToolsPath}/register/Esri/ArcGISRuntime/Toolkit)
set(ToolkitSrcPath  ${UIToolsPath}/cpp/Esri/ArcGISRuntime/Toolkit)

set(RegistrationSourceFiles
    ${RegisterPath}/register.h
    ${RegisterPath}/register.cpp
    ${RegisterPath}/internal/register_cpp.h
    ${RegisterPath}/internal/register_cpp.cpp
)

set(QmlSourceFiles
    ${UIToolsPath}/images/esri_arcgisruntime_toolkit_images.qrc
    ${UIToolsPath}/import/Esri/ArcGISRuntime/Toolkit/esri_arcgisruntime_toolkit_view.qrc
)

set(ToolkitSourceFiles
    ${ToolkitSrcPath}/Internal/GenericListModel.h
    ${ToolkitSrcPath}/Internal/GenericListModel.cpp
    ${ToolkitSrcPath}/Internal/BasemapGalleryImageProvider.h
    ${ToolkitSrcPath}/Internal/BasemapGalleryImageProvider.cpp
    ${ToolkitSrcPath}/Internal/GenericTableProxyModel.h
    ${ToolkitSrcPath}/Internal/GenericTableProxyModel.cpp
    ${ToolkitSrcPath}/Internal/GeoViews.h
    ${ToolkitSrcPath}/Internal/MetaElement.h
    ${ToolkitSrcPath}/Internal/MetaElement.cpp

    ${ToolkitSrcPath}/AuthenticationController.h
    ${ToolkitSrcPath}/AuthenticationController.cpp
    ${ToolkitSrcPath}/BasemapGalleryController.h
    ${ToolkitSrcPath}/BasemapGalleryController.cpp
    ${ToolkitSrcPath}/BasemapGalleryItem.h
    ${ToolkitSrcPath}/BasemapGalleryItem.cpp
    ${ToolkitSrcPath}/CoordinateConversionConstants.h
    ${ToolkitSrcPath}/CoordinateConversionConstants.cpp
    ${ToolkitSrcPath}/CoordinateConversionController.h
    ${ToolkitSrcPath}/CoordinateConversionController.cpp
    ${ToolkitSrcPath}/CoordinateConversionOption.h
    ${ToolkitSrcPath}/CoordinateConversionOption.cpp
    ${ToolkitSrcPath}/CoordinateConversionResult.h
    ${ToolkitSrcPath}/CoordinateConversionResult.cpp
    ${ToolkitSrcPath}/CoordinateOptionDefaults.h
    ${ToolkitSrcPath}/CoordinateOptionDefaults.cpp
    ${ToolkitSrcPath}/LocatorSearchSource.h
    ${ToolkitSrcPath}/LocatorSearchSource.cpp
    ${ToolkitSrcPath}/NorthArrowController.h
    ${ToolkitSrcPath}/NorthArrowController.cpp
    ${ToolkitSrcPath}/OverviewMapController.h
    ${ToolkitSrcPath}/OverviewMapController.cpp
    ${ToolkitSrcPath}/PopupViewController.h
    ${ToolkitSrcPath}/PopupViewController.cpp
    ${ToolkitSrcPath}/ScalebarController.h
    ${ToolkitSrcPath}/ScalebarController.cpp
    ${ToolkitSrcPath}/SearchResult.h
    ${ToolkitSrcPath}/SearchResult.cpp
    ${ToolkitSrcPath}/SearchSourceInterface.h
    ${ToolkitSrcPath}/SearchSourceInterface.cpp
    ${ToolkitSrcPath}/SearchSuggestion.h
    ${ToolkitSrcPath}/SearchSuggestion.cpp
    ${ToolkitSrcPath}/SearchViewController.h
    ${ToolkitSrcPath}/SearchViewController.cpp
    ${ToolkitSrcPath}/SmartLocatorSearchSource.h
    ${ToolkitSrcPath}/SmartLocatorSearchSource.cpp
    ${ToolkitSrcPath}/TimeSliderController.h
    ${ToolkitSrcPath}/TimeSliderController.cpp
)

add_library(${ModuleName}
    ${ToolkitSourceFiles}
    ${RegistrationSourceFiles}
    ${QmlSourceFiles}
)

target_link_libraries(${ModuleName}
    PUBLIC
        Qt5::Core
        Qt5::Quick
        ArcGISRuntime::Cpp
)

target_include_directories(${ModuleName}
    PUBLIC
        ${UIToolsPath}/register
    PRIVATE
        ${UIToolsPath}/cpp
        ${UIToolsPath}/cpp/Esri/ArcGISRuntime/Toolkit
)

target_compile_definitions(${ModuleName}
    PRIVATE 
        CPP_ARCGISRUNTIME_TOOLKIT
)

Example of PopupView with attribute editing

An example of editing attributes with the PopupView would be nice. I can get the view to appear but the exact procedure to 'trip' the editing capabilities is not obvious right now.

Allow overriding the time interval and full time extent in the TimeSlider toolkit in Qt

I would like to be able to use a time enabled feature layer that is missing the time interval value, but given that there is no way to manually override that, we cannot utilize that service.

As per Ting 's suggestion, this appears to be possible in the iOS toolkit.

there is an initializer for the iOS TimeSlider to instantiate with a “full time extent”: https://github.com/Esri/arcgis-runtime-toolkit-ios/tree/master/Documentation/TimeSlider#usage

public func initializeTimeSteps(timeStepCount: Int, fullExtent: AGSTimeExtent, completion: @escaping (Error?)->Void)

In iOS it is also possible to set the full time extent using the property:

timeSlider.fullExtent = AGSTimeExtent(startTime: startTime, endTime: endTime)

OverviewMap

Min-ship (High Priority)

  • The overview map itself will be 2D only. For a 3D overview map, we will have a separate component called "overview scene" which will be prioritized separately
  • The "main" geoview of the app can be either 2D map or 3D scene
  • The overview map indicator should show the current view
  • As your main geoview's viewpoint changes, the overview map is updated automatically
  • The scale/LOD of the overview map should update automatically as the user zooms in on the main map. For example, If you are looking at a city level, we don't want the overview map to be at the World level - it should be somewhere around state or country level (depending on size of state/country)
  • Extent indicator is a red solid line by default
  • Basemap is the Esri Topographic Vector Basemap by default
  • Works with API Keys
  • On mobile, the overviewmap's touch/click events should be ignored (no user panning or zooming) - it is for reference only. On Desktop, it will update the main map's viewpoint
  • works across the dateline (likely need to normalize geometry)
  • works if map is rotated

Nice-to-haves (Moderate Priority)

The overview map's basemap can be changed/specified
The overview map's extent indicator should be customizable

Examples:

image

image

image

Search

As a user... I want a text box where I can search for a place, address, or feature, get results, and display them on a map.

Min Ship (High Priority):

  • User can search for place or address
  • Suggestions are returned (if supported by locator).
  • Out of the box, the search bar works with AGOL world geocoding service. No configuration required. Just add to your app, and you can geocode and show results on map.
  • Works with API Keys
  • When user selects a suggestion or hits enter, a default graphic is added to the geoview and optionally the viewpoint is changed
  • Added graphics contain attributes with geocode result information, so that developer can identify and display a callout with the geocoded address info
  • works in 2D and 3D
  • Developer can clear geocode result graphics from the view

Nice-to-haves (Moderate Priority):

  • Developer can customize to specify their own locator, whether online (service endpoint/item) or offline (either locator file or from MobileMapPackage.locatorTask)
  • Developer can easily modify style of graphic "pin" that is dropped (they might want to change the picture marker symbol or simple marker symbol style)
  • Developer can opt to continue adding new pins with each search (add to), or to always only have 1 pin with the latest search (add as new).
  • To consider - how can we build this so we can pull it into the route directions control when we get to that later? (https://developers.arcgis.com/javascript/latest/sample-code/widgets-directions/)
  • To consider - how do we handle multiple results? If I search for "Coffee" and there are 8 results, can the developer opt to show all 8?
  • Can search feature tables for features
  • Customize search pins for the returned category ("coffee", "restaurants", "gas station", etc)

Resources:

Here is the JS Search Widget - https://developers.arcgis.com/javascript/latest/sample-code/widgets-search-3d/

image

image

image

image

image

SearchBox example initial text issue

SearchboxExample.qml sets SearchBox with searchTextInput: "900 North Point Ave, San Francisco", but search control renders with its internal default of "3575 Geary Blvd, San Francisco". Without typing in anything and clicking search it locates 900 North Point Ave, which is not what the user wanted but it is what the code wanted. Altering the text after init produces the correct results.

Cmake "ArcGIS Runtime 100.8 Qt Quick app" template runtime problem

On windows: when selecting "ArcGIS Runtime 100.8 Qt Quick app" from the Qt creator wizard and selecting Cmake as buildssystem, where I set the following Cmake values:

  • ArcGISRuntime_EsriCommonQt_IMPLIB = C:\ArcGIS\Qt100.8\sdk\windows\x64\lib\EsriCommonQtd.lib
  • ArcGISRuntime_EsriCommonQt_LIB = C:\ArcGIS\Qt100.8\sdk\windows\x64\bin\EsriCommonQtd.dll
  • ArcGISRuntime_runtimecore_LIB = C:\ArcGIS\Qt100.8\sdk\windows\x64\bin\runtimecore.dll
  • ArcGISRuntime_INSTALL_DIR = C:/ArcGIS/Qt100.8
  • QML_IMPORT_PATH = C:/ArcGIS/Qt100.8/sdk/windows/x64/qml

I keep getting the following error during runtime debugging:

QQmlApplicationEngine failed to load component
qrc:/qml/main.qml:16 plugin cannot be loaded for module "Esri.ArcGISRuntime": Cannot load library C:\ArcGIS\Qt100.8\sdk\windows\x64\qml\Esri\ArcGISRuntime\ArcGISRuntimePlugind.dll: The specified procedure could not be found.

How can I fix this? Would it be possible to fix this in the "ArcGIS Runtime 100.8 Qt Quick app" template?

Wildcard includes cause qmake warnings and build errors

14:08:21: Running steps for project ArcGISRuntimeToolkit_StaticLib...
14:08:21: Starting: "C:\Qt\Tools\QtCreator\bin\jom.exe" clean
	C:\Qt\Tools\QtCreator\bin\jom.exe -f Makefile.Debug clean
	del ..\CppApi\output\windows\x64\debug\moc\moc_predefs.h
Could Not Find C:\dsa\dynamic-situational-awareness-qt\arcgis-runtime-toolkit-qt\Plugin\CppApi\output\windows\x64\debug\moc\moc_predefs.h
	del ..\CppApi\output\windows\x64\debug\obj\*.obj ..\CppApi\output\windows\x64\debug\obj\*.obj
Could Not Find C:\dsa\dynamic-situational-awareness-qt\arcgis-runtime-toolkit-qt\Plugin\CppApi\output\windows\x64\debug\obj\*.obj
	del ..\CppApi\output\windows\x64\ArcGISRuntimeToolkitCppApid.pdb ..\CppApi\output\windows\x64\ArcGISRuntimeToolkitCppApid.ilk ..\CppApi\output\windows\x64\ArcGISRuntimeToolkitCppApid.idb
	C:\Qt\Tools\QtCreator\bin\jom.exe -f Makefile.Release clean
	del ..\CppApi\output\windows\x64\release\moc\moc_predefs.h
	del ..\CppApi\output\windows\x64\release\obj\*.obj ..\CppApi\output\windows\x64\release\obj\*.obj
Could Not Find C:\dsa\dynamic-situational-awareness-qt\arcgis-runtime-toolkit-qt\Plugin\CppApi\output\windows\x64\release\moc\moc_predefs.h
Could Not Find C:\dsa\dynamic-situational-awareness-qt\arcgis-runtime-toolkit-qt\Plugin\CppApi\output\windows\x64\release\obj\*.obj
Could Not Find C:\dsa\dynamic-situational-awareness-qt\arcgis-runtime-toolkit-qt\Plugin\CppApi\output\windows\x64\ArcGISRuntimeToolkitCppApid.pdb
	del ..\CppApi\output\windows\x64\ArcGISRuntimeToolkitCppApi.pdb
Could Not Find C:\dsa\dynamic-situational-awareness-qt\arcgis-runtime-toolkit-qt\Plugin\CppApi\output\windows\x64\ArcGISRuntimeToolkitCppApi.pdb
	del ..\CppApi\output\windows\x64\ArcGISRuntimeToolkitCppApi.ilk
Could Not Find C:\dsa\dynamic-situational-awareness-qt\arcgis-runtime-toolkit-qt\Plugin\CppApi\output\windows\x64\ArcGISRuntimeToolkitCppApi.ilk
	del ..\CppApi\output\windows\x64\ArcGISRuntimeToolkitCppApi.idb
Could Not Find C:\dsa\dynamic-situational-awareness-qt\arcgis-runtime-toolkit-qt\Plugin\CppApi\output\windows\x64\ArcGISRuntimeToolkitCppApi.idb
14:08:21: The process "C:\Qt\Tools\QtCreator\bin\jom.exe" exited normally.
14:08:21: Starting: "C:\Qt\5.14.1\msvc2017_64\bin\qmake.exe" C:\dsa\dynamic-situational-awareness-qt\arcgis-runtime-toolkit-qt\Plugin\CppApi\ArcGISRuntimeToolkit_StaticLib.pro -spec win32-msvc "CONFIG+=debug" "CONFIG+=qml_debug"
Project MESSAGE: ArcGIS Runtime for Windows (x86_64)
Project MESSAGE: Version  100.7
Project MESSAGE: ArcGIS Runtime for Windows (x86_64)
Project MESSAGE: Version  100.7
WARNING: Failure to find: C:/dsa/dynamic-situational-awareness-qt/arcgis-runtime-toolkit-qt/Plugin/CppApi/source/*.cpp
WARNING: Failure to find: C:/dsa/dynamic-situational-awareness-qt/arcgis-runtime-toolkit-qt/Plugin/CppApi/source/CoordinateConversion/*.cpp
WARNING: Failure to find: C:/dsa/dynamic-situational-awareness-qt/arcgis-runtime-toolkit-qt/Plugin/CppApi/include/*.h
WARNING: Failure to find: C:/dsa/dynamic-situational-awareness-qt/arcgis-runtime-toolkit-qt/Plugin/CppApi/include/CoordinateConversion/*.h
Project MESSAGE: ArcGIS Runtime for Windows (x86_64)
Project MESSAGE: Version  100.7
WARNING: Failure to find: C:/dsa/dynamic-situational-awareness-qt/arcgis-runtime-toolkit-qt/Plugin/CppApi/source/*.cpp
WARNING: Failure to find: C:/dsa/dynamic-situational-awareness-qt/arcgis-runtime-toolkit-qt/Plugin/CppApi/source/CoordinateConversion/*.cpp
WARNING: Failure to find: C:/dsa/dynamic-situational-awareness-qt/arcgis-runtime-toolkit-qt/Plugin/CppApi/include/*.h
WARNING: Failure to find: C:/dsa/dynamic-situational-awareness-qt/arcgis-runtime-toolkit-qt/Plugin/CppApi/include/CoordinateConversion/*.h
14:08:21: The process "C:\Qt\5.14.1\msvc2017_64\bin\qmake.exe" exited normally.
14:08:21: Starting: "C:\Qt\Tools\QtCreator\bin\jom.exe" -f C:/dsa/dynamic-situational-awareness-qt/arcgis-runtime-toolkit-qt/Plugin/build-ArcGISRuntimeToolkit_StaticLib-Desktop_Qt_5_14_1_MSVC2017_64bit-Debug/Makefile qmake_all

jom 1.1.3 - empower your cores

14:08:21: The process "C:\Qt\Tools\QtCreator\bin\jom.exe" exited normally.
14:08:21: Starting: "C:\Qt\Tools\QtCreator\bin\jom.exe" 
	C:\Qt\Tools\QtCreator\bin\jom.exe -f Makefile.Debug
	lib /NOLOGO  /OUT:..\CppApi\output\windows\x64\ArcGISRuntimeToolkitCppApid.lib @C:\Users\gary4620\AppData\Local\Temp\ArcGISRuntimeToolkitCppApid.lib.23084.15.jom
14:08:21: The process "C:\Qt\Tools\QtCreator\bin\jom.exe" exited normally.
14:08:21: Elapsed time: 00:01.

All the wildcard includes don't work. This causes the .lib not to get built.

I have a fix based on https://forum.qt.io/post/209535. I will submit a pull request.

Error trying Portal Items View example

Loaded the Portal Items View example then scrolled to the World Traffic Service item when trying to load that layer I get the error

qt.network.ssl: QSslSocket: cannot call unresolved function SSL_get0_next_proto_negotiated

[C++] Timeslider does not show current start and end time extent values

I have noticed a discrepancy between the QML and CPP timeSlider toolkits. In the QML version, under the start and end buttons, it specifies the date and time, whereas the C++ one does not say anything. I think it is really helpful to include that information in the C++ timeslider as well so the user knows what date range they are currently viewing. Please compare the 2 images below for more details.

QML:

qml_screenshot

C++:
cpp_screenshot

Time Extent with Time Slider UI issue and enhancements

The AppStudio team is creating a sample base on the Runtime sample Control time extent using time slider. During holistic testing we received some enhancement requests and 2 issues. One UI issue we found is components overlap if the screen width is small.

Screen Shot 2022-02-15 at 10 37 00 AM

The other issue is not reproducible and is believed to be caused by latency issue (issue found by user in Melbourne, Australia). The issue reported by the user is after adjusting the slider, the user had to press play (or pause) button 2+ times to change behaviors.

The enhancement requests are:

  • Disable forward and rewind buttons when in play
  • Allow press and hold on forward and rewind buttons to skip until released

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.