Welcome to mirror list, hosted at ThFree Co, Russian Federation.

lightup.md - github.com/xamarin/Xamarin.PropertyEditing.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 1e46513fe055d59669f3a25b77bf1bb8663ed714 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# Light Up Features

This documents some features that are not strictly required to be implemented by the interfaces and therefore
may go unnoticed.

## Go To Source

To implement this feature available through the property context button, the interface `ICanNavigateToSource` is implemented on `IPropertyInfo` instances. It provides an availability query through `bool CanNavigateToSource (IObjectEditor);` and a signal through `NavigateToSource (IObjectEditor)`. The integrator will route the signal from `NavigateToSource` to whatever mechanism they have to handle requests to open files and move to lines.

## Nameable objects

The name of an object (field name, x:Name, etc) holds a special place within the UI for the property editor. While you can certainly treat this as a normal string property, there is a special interface that elevates this property to the top level. If you implement this property you should _not_ report it through the normal `IObjectEditor.Properties`.

To support, implement `INameableObject` on your `IObjectEditor`. The API is a simple string get/set in `GetNameAsync()` and `SetNameAsync (string)`.

## Defaulted Open Categories

The implementing platform can specify property categories that should be opened by default (otherwise they are all collapsed). In `TargetPlatform.AutoExpandGroups`, add the category names that should be expanded by default.