dotnet / dotnet/project-system

Project Property Page UI Extensibility

Open
#6,895 5 comments 0 reactions 1 assignee Claimed by @drewnoakes View on GitHub
Feature-Project-Properties-Designer Triage-Investigate
Dominant language
C#
Stars
1k
Forks
415
PR merge metrics
No merged PRs in 30d

Description

(Extracted from #6627)

The new Project Property Pages aim to be extensible to first and third parties. Some additional extension points are required to offer the full capabilities of the end-to-end system to extenders.

- [ ] Introduce MEF contracts and metadata for various types and extension points
- [x] Property editors ([PR](https://devdiv.visualstudio.com/DevDiv/_git/CPS/pullrequest/304545))
- As we open up to first and third parties, we'll see requests to show custom UI. Allowing composition of editors via MEF will unblock extenders.
- [x] Link actions handlers ([PR](https://devdiv.visualstudio.com/DevDiv/_git/CPS/pullrequest/303509))
- Currently we only allow hyperlinks for URLs. This will enable such hyperlinks (or other UI elements) to run custom code. Expected uses are showing the launch profile UI, and launching the VS installer to modify the set of installed target frameworks.
- [ ] Custom visibility condition functions ([PR](https://devdiv.visualstudio.com/DevDiv/_git/CPS/pullrequest/325289))
- As we open up to first and third parties, we'll see requests to extend the set of visibility condition functions. Allowing composition of functions via MEF will unblock extenders.
- [ ] Make interfaces public
- Until the API is finalized, keep these extension point interfaces internal.
- [ ] Document extension points
- Some of this is covered by PR #6963

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.