
# IWorkspacePreferences interface

The `IWorkspacePreferences` interface represents the Preferences object in Altium Designer This interface details with file ownership - that is the rights of access to a design document.

```csharp
public interface IWorkspacePreferences
```

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

## Properties

| Property | Type | Access | Description |
| --- | --- | --- | --- |
| [DefaultTemplateFile](#defaulttemplatefile) | `string` | get; set |  |
| [FileOwnership_Enabled](#fileownership_enabled) | `bool` | get; set |  |
| [FileOwnership_EnabledOutputDirectory](#fileownership_enabledoutputdirectory) | `bool` | get; set |  |
| [FileOwnership_WarningLevelOpen](#fileownership_warninglevelopen) | [TFileOwnershipWarningLevel](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/TFileOwnershipWarningLevel.md) | get; set |  |
| [FileOwnership_WarningLevelSave](#fileownership_warninglevelsave) | [TFileOwnershipWarningLevel](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/TFileOwnershipWarningLevel.md) | get; set |  |
| [ReleasesTemporaryFolder](#releasestemporaryfolder) | `string` | get; set |  |
| [ReleasesTemporaryFolderCleanUp](#releasestemporaryfoldercleanup) | `bool` | get; set |  |
| [TemplateSource](#templatesource) | [TTemplateSource](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TTemplateSource.md) | get; set |  |
| [UseLeftRightSelection](#useleftrightselection) | `bool` | get; set |  |

### DefaultTemplateFile

*No description yet.*

```csharp
string GetDefaultTemplateFile(string argDocKind);
void SetDefaultTemplateFile(string argDocKind, string argFileName);
```

**Type:** `string` · **Access:** read/write · **Index:** `argDocKind` (`string`)

### FileOwnership_Enabled

*No description yet.*

```csharp
bool GetFileOwnership_Enabled();
void SetFileOwnership_Enabled(bool argValue);
```

**Type:** `bool` · **Access:** read/write

### FileOwnership_EnabledOutputDirectory

*No description yet.*

```csharp
bool GetFileOwnership_EnabledOutputDirectory();
void SetFileOwnership_EnabledOutputDirectory(bool argValue);
```

**Type:** `bool` · **Access:** read/write

### FileOwnership_WarningLevelOpen

*No description yet.*

```csharp
TFileOwnershipWarningLevel GetFileOwnership_WarningLevelOpen();
void SetFileOwnership_WarningLevelOpen(TFileOwnershipWarningLevel argValue);
```

**Type:** [TFileOwnershipWarningLevel](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/TFileOwnershipWarningLevel.md) · **Access:** read/write

The accessors are extension methods of `IWorkspacePreferencesHelper` (`using EDP;`).

### FileOwnership_WarningLevelSave

*No description yet.*

```csharp
TFileOwnershipWarningLevel GetFileOwnership_WarningLevelSave();
void SetFileOwnership_WarningLevelSave(TFileOwnershipWarningLevel argValue);
```

**Type:** [TFileOwnershipWarningLevel](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/TFileOwnershipWarningLevel.md) · **Access:** read/write

The accessors are extension methods of `IWorkspacePreferencesHelper` (`using EDP;`).

### ReleasesTemporaryFolder

*No description yet.*

```csharp
string GetReleasesTemporaryFolder();
void SetReleasesTemporaryFolder(string argValue);
```

**Type:** `string` · **Access:** read/write

### ReleasesTemporaryFolderCleanUp

*No description yet.*

```csharp
bool GetReleasesTemporaryFolderCleanUp();
void SetReleasesTemporaryFolderCleanUp(bool argValue);
```

**Type:** `bool` · **Access:** read/write

### TemplateSource

*No description yet.*

```csharp
TTemplateSource GetTemplateSource();
void SetTemplateSource(TTemplateSource argValue);
```

**Type:** [TTemplateSource](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TTemplateSource.md) · **Access:** read/write

The accessors are extension methods of `IWorkspacePreferencesHelper` (`using EDP;`).

### UseLeftRightSelection

*No description yet.*

```csharp
bool GetUseLeftRightSelection();
void SetUseLeftRightSelection(bool argValue);
```

**Type:** `bool` · **Access:** read/write

## Methods

| Method | Returns | Description |
| --- | --- | --- |
| [GetCrossSelectZoomOption](#getcrossselectzoomoption) | [TCrossSelectZoomOption](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TCrossSelectZoomOption.md) |  |
| [GetDefaultDocumentPath](#getdefaultdocumentpath) | `string` |  |
| [GetDefaultLibraryPath](#getdefaultlibrarypath) | `string` |  |
| [GetDefaultTemplateFile_NotExpanded](#getdefaulttemplatefile_notexpanded) | `string` |  |
| [GetHighlightConnectedPowerParts](#gethighlightconnectedpowerparts) | `bool` |  |
| [GetHighlightMethodSet](#gethighlightmethodset) | [THighlightMethodSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/THighlightMethodSet.md) |  |
| [GetObjectsToDisplay](#getobjectstodisplay) | [TWorkspaceObjectIdSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TWorkspaceObjectIdSet.md) |  |
| [GetTemplatePath_Sch](#gettemplatepath_sch) | `string` |  |
| [GetVariantOption](#getvariantoption) | [IVariantOption](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IVariantOption.md) |  |

### GetCrossSelectZoomOption

*No description yet.*

```csharp
TCrossSelectZoomOption GetCrossSelectZoomOption();
```

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

Extension method of `IWorkspacePreferencesHelper` (`using EDP;`).

### GetDefaultDocumentPath

*No description yet.*

```csharp
string GetDefaultDocumentPath();
```

**Returns:** `string`

### GetDefaultLibraryPath

*No description yet.*

```csharp
string GetDefaultLibraryPath();
```

**Returns:** `string`

### GetDefaultTemplateFile_NotExpanded

*No description yet.*

```csharp
string GetDefaultTemplateFile_NotExpanded(string argDocKind);
```

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

**Returns:** `string`

### GetHighlightConnectedPowerParts

*No description yet.*

```csharp
bool GetHighlightConnectedPowerParts();
```

**Returns:** `bool`

### GetHighlightMethodSet

*No description yet.*

```csharp
THighlightMethodSet GetHighlightMethodSet();
```

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

Extension method of `IWorkspacePreferencesHelper` (`using EDP;`).

### GetObjectsToDisplay

*No description yet.*

```csharp
TWorkspaceObjectIdSet GetObjectsToDisplay();
```

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

Extension method of `IWorkspacePreferencesHelper` (`using EDP;`).

### GetTemplatePath_Sch

*No description yet.*

```csharp
string GetTemplatePath_Sch();
```

**Returns:** `string`

### GetVariantOption

*No description yet.*

```csharp
IVariantOption GetVariantOption();
```

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

Extension method of `IWorkspacePreferencesHelper` (`using EDP;`).

**Examples:** [Extension_VariantOptions](https://github.com/AltiumDeveloper/ad-sdk-examples/blob/5b144f54740a53ec578b3b6c3f902b831e0b1144/Extension_VariantOptions/Source%20Code/Commands.cs#L27)

## Returned by

[IWorkspace.DM_Preferences](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IWorkspace.md#dm_preferences)

## Examples

Used in the SDK examples: [Extension_VariantOptions](https://github.com/AltiumDeveloper/ad-sdk-examples/blob/5b144f54740a53ec578b3b6c3f902b831e0b1144/Extension_VariantOptions/Source%20Code/Commands.cs#L26).
