Table of Contents

Interface ISettingsProvider

Namespace
WindowSill.API
Assembly
WindowSill.API.dll

Provides a set of methods to manage the application's settings.

public interface ISettingsProvider
Extension Methods

Methods

GetSetting<T>(SettingDefinition<T>)

Gets the value of a defined setting.

T GetSetting<T>(SettingDefinition<T> settingDefinition)

Parameters

settingDefinition SettingDefinition<T>

The SettingDefinition<T> that defines the targeted setting.

Returns

T

Return the value of the setting or its default value.

Type Parameters

T

The type of value that will be retrieved.

OpenSettingsPageForSill(string, string?)

Opens the settings page for the specified sill.

void OpenSettingsPageForSill(string internalSillName, string? sillSettingViewTitle)

Parameters

internalSillName string

The internal name of the sill whose settings page should be opened.

sillSettingViewTitle string

The display name of the SillSettingsView to navigate to. This is optional when there's only one setting view defined in a ISill.

ResetSetting<T>(SettingDefinition<T>)

Resets a given setting to its default value.

void ResetSetting<T>(SettingDefinition<T> settingDefinition)

Parameters

settingDefinition SettingDefinition<T>

Type Parameters

T

SetSetting<T>(SettingDefinition<T>, T)

Sets the value of a given setting.

void SetSetting<T>(SettingDefinition<T> settingDefinition, T value)

Parameters

settingDefinition SettingDefinition<T>

The SettingDefinition<T> that defines the targeted setting.

value T

The value to set

Type Parameters

T

The type of value that will be set.

Remarks

Settings are limited to 8 KB per settings or 64 KB for the entire WindowSill app. Do NOT store large data in settings. Use IPluginInfo instead

Events

SettingChanged

Raised when a setting value has changed.

event TypedEventHandler<ISettingsProvider, SettingChangedEventArgs>? SettingChanged

Event Type

TypedEventHandler<ISettingsProvider, SettingChangedEventArgs>