
# IOptionsManager interface

The `IOptionsManager` interface deals with the options of a system wide Preferences dialog or project centric Project Options dialog.

```csharp
public interface IOptionsManager
```

**Namespace:** DXP · **Assembly:** Altium.SDK.Interfaces

## Remarks

A server needs to register its own options pages within the Client module of Altium Designer. The TServerModule class from the RT_ServerImplementation unit within the Altium Designer RTL has a RegisterOptionsPageClass method for you to override. You need to pass in the name of the options page and the Options Form of TOptionsForm type. Normally this form is the same as the server panel form with the controls on it.

## Methods

| Method | Returns | Description |
| --- | --- | --- |
| [GetOptionsReader](#getoptionsreader) | [IOptionsReader](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IOptionsReader.md) | This method retrieves the [`IOptionsReader`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IOptionsReader.md) method which enables you to read setting values for the Options of the specified server. |
| [GetOptionsReader_FromIniFile](#getoptionsreader_frominifile) | [IOptionsReader](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IOptionsReader.md) |  |
| [GetOptionsWriter](#getoptionswriter) | [IOptionsWriter](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IOptionsWriter.md) | This method retrieves the [`IOptionsWriter`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IOptionsWriter.md) method which enables you to write setting values for the Options of the specified server. |
| [GetOptionsWriter_ForIniFile](#getoptionswriter_forinifile) | [IOptionsWriter](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IOptionsWriter.md) |  |
| [OptionsExist](#optionsexist) | `bool` | This method checks if the options for the specified server exist on the system wide Preference dialog. |

### GetOptionsReader

This method retrieves the [`IOptionsReader`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IOptionsReader.md) method which enables you to read setting values for the Options of the specified server.

```csharp
IOptionsReader GetOptionsReader(string argServerName, string argOldSettingsPath);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argServerName` | `string` | value |
| `argOldSettingsPath` | `string` | value |

**Returns:** [IOptionsReader](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IOptionsReader.md)

Extension method of `IOptionsManagerHelper` (`using DXP;`).

**See also:** [IOptionsWriter](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IOptionsWriter.md), [IOptionsReader](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IOptionsReader.md)

### GetOptionsReader_FromIniFile

*No description yet.*

```csharp
IOptionsReader GetOptionsReader_FromIniFile(string argFullPath);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argFullPath` | `string` | value |

**Returns:** [IOptionsReader](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IOptionsReader.md)

Extension method of `IOptionsManagerHelper` (`using DXP;`).

### GetOptionsWriter

This method retrieves the [`IOptionsWriter`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IOptionsWriter.md) method which enables you to write setting values for the Options of the specified server.

```csharp
IOptionsWriter GetOptionsWriter(string argServerName);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argServerName` | `string` | value |

**Returns:** [IOptionsWriter](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IOptionsWriter.md)

Extension method of `IOptionsManagerHelper` (`using DXP;`).

**See also:** [IOptionsWriter](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IOptionsWriter.md), [IOptionsReader](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IOptionsReader.md)

### GetOptionsWriter_ForIniFile

*No description yet.*

```csharp
IOptionsWriter GetOptionsWriter_ForIniFile(string argFullPath);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argFullPath` | `string` | value |

**Returns:** [IOptionsWriter](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IOptionsWriter.md)

Extension method of `IOptionsManagerHelper` (`using DXP;`).

### OptionsExist

This method checks if the options for the specified server exist on the system wide Preference dialog.

```csharp
bool OptionsExist(string argServerName, string argOldSettingsPath);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argServerName` | `string` | value |
| `argOldSettingsPath` | `string` | value |

**Returns:** `bool`

## Returned by

[IClient.GetOptionsManager](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IClient.md#getoptionsmanager), [IClientAPI_Interface.GetOptionsManager](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IClientAPI_Interface.md#getoptionsmanager)
