Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Feature Tracking for Measure-Tools #1026

Closed
wants to merge 5 commits into from

Conversation

MikeNBentley
Copy link

Resolve Issue #980

Based off solutions on tree-widget package, add feature tracking to measure-tools. Now, users can pass their callback function onFeatureUsed to MeasureToolsUiItemsProvider to handle features being used. There is an usage example in the updated README.

(This information is also included in README but just put here for reference) The feature tracking message is now in format feature-[feature being used]-event-[event related to the feature]. This format should be easy enough for users to process and paste the message.

Current tracking features and respective are (will update more later!) (for detailed message, please again refer to updated README):

  • Distance Measurement: Trigger, Cancel (for example we change to select mode or clear all measurements), Click on Start/End point of Distance

  • Clear Measurements: Trigger

  • Property Widget: When results are updated, when widget is empty

  • Selection Set: While this is not essentially a feature. All measurements seem to base off a global selection set. Hence, changes to this selection set might prove useful for users, so feature tracking for Selection Set is added.

@MikeNBentley MikeNBentley self-assigned this Aug 27, 2024
@bsy-nicholasw
Copy link
Contributor

bsy-nicholasw commented Aug 28, 2024

We already have feature tracking that all the tools call if subclasses provide Feature and it's called in the postInstall of the base tool. At some point in the past, the implementation did change a bit so the app would have to set it up by adding an event listener to FeatureTracking.onFeature.

At most this should just be providing a listener in the props to the UI provider that hooks up this event for the app, but it's also arguable that could also happen in MeasureTools.startup.

For the extra granularity in features, they should be added to our list of features in FeatureTracking, but who requested adding those for every point / property widget update?

@MikeNBentley
Copy link
Author

MikeNBentley commented Aug 28, 2024

We already have feature tracking that all the tools call if subclasses provide Feature and it's called in the postInstall of the base tool. At some point in the past, the implementation did change a bit so the app would have to set it up by adding an event listener to FeatureTracking.onFeature.

At most this should just be providing a listener in the props to the UI provider that hooks up this event for the app, but it's also arguable that could also happen in MeasureTools.startup.

For the extra granularity in features, they should be added to our list of features in FeatureTracking, but who requested adding those for every point / property widget update?

I will base off these ideas and make other PR. Thank you!

@aruniverse aruniverse deleted the mikeN/measure-tools-features-track branch January 17, 2025 19:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[measure-tools] Allow apps to hook into feature tracking
2 participants