
# ITOCNode interface

*No description yet.*

```csharp
public interface ITOCNode
```

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

## Properties

| Property | Type | Access | Description |
| --- | --- | --- | --- |
| [BoundingRectangle](#boundingrectangle) | [Rect](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/Rect.md) | get |  |
| [ChildCount](#childcount) | `int` | get |  |
| [Children](#children) | [ITOCNode](#) | get |  |
| [DisplayName](#displayname) | `string` | get |  |
| [HighlightKey](#highlightkey) | `string` | get |  |
| [HighlightRectangle](#highlightrectangle) | [Rect](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/Rect.md) | get |  |
| [IsComponent](#iscomponent) | `bool` | get |  |
| [Kind](#kind) | [TTOCObjectKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TTOCObjectKind.md) | get |  |
| [Name](#name) | `string` | get |  |
| [PageIndex](#pageindex) | `int` | get |  |

### BoundingRectangle

*No description yet.*

```csharp
Rect GetState_BoundingRectangle();
```

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

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

### ChildCount

*No description yet.*

```csharp
int GetState_ChildCount();
```

**Type:** `int` · **Access:** read-only

### Children

*No description yet.*

```csharp
ITOCNode GetState_Children(int argIndex);
```

**Type:** [ITOCNode](#) · **Access:** read-only · **Index:** `argIndex` (`int`)

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

### DisplayName

*No description yet.*

```csharp
string GetState_DisplayName();
```

**Type:** `string` · **Access:** read-only

### HighlightKey

*No description yet.*

```csharp
string GetState_HighlightKey();
```

**Type:** `string` · **Access:** read-only

### HighlightRectangle

*No description yet.*

```csharp
Rect GetState_HighlightRectangle();
```

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

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

### IsComponent

*No description yet.*

```csharp
bool GetState_IsComponent();
```

**Type:** `bool` · **Access:** read-only

### Kind

*No description yet.*

```csharp
TTOCObjectKind GetState_Kind();
```

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

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

### Name

*No description yet.*

```csharp
string GetState_Name();
```

**Type:** `string` · **Access:** read-only

### PageIndex

*No description yet.*

```csharp
int GetState_PageIndex();
```

**Type:** `int` · **Access:** read-only

## Methods

| Method | Returns | Description |
| --- | --- | --- |
| [AddAttribute](#addattribute) | `void` |  |
| [AddChild](#addchild) | `int` |  |
| [FindChildByName](#findchildbyname) | [ITOCNode](#) |  |
| [RemoveAttribute](#removeattribute) | `void` |  |
| [RemoveChild](#removechild) | `void` |  |
| [SortChildrenByName](#sortchildrenbyname) | `void` |  |

### AddAttribute

*No description yet.*

```csharp
void AddAttribute(string argttribute);
```

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

**Returns:** nothing (`void`)

### AddChild

*No description yet.*

```csharp
int AddChild(string argName, Rect argBoundingRectangle, Rect argHighlightRectangle, string argHighlightKey, int argPageIndex, bool argIsComponent, TTOCObjectKind argKind);
int AddChild(string argName, IRect argBoundingRectangle, IRect argHighlightRectangle, string argHighlightKey, int argPageIndex, bool argIsComponent, int argKind);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argName` | `string` | value |
| `argBoundingRectangle` | [Rect](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/Rect.md) | value |
| `argHighlightRectangle` | [Rect](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/Rect.md) | value |
| `argHighlightKey` | `string` | value |
| `argPageIndex` | `int` | value |
| `argIsComponent` | `bool` | value |
| `argKind` | [TTOCObjectKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TTOCObjectKind.md) | value |

**Returns:** `int`

The first overload is an extension method of `ITOCNodeHelper` (`using EDP;`) with typed parameters; the second is declared by the interface.

### FindChildByName

*No description yet.*

```csharp
ITOCNode FindChildByName(string argName);
```

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

**Returns:** [ITOCNode](#)

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

### RemoveAttribute

*No description yet.*

```csharp
void RemoveAttribute(string argttribute);
```

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

**Returns:** nothing (`void`)

### RemoveChild

*No description yet.*

```csharp
void RemoveChild(int argIndex);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argIndex` | `int` | value |

**Returns:** nothing (`void`)

### SortChildrenByName

*No description yet.*

```csharp
void SortChildrenByName();
```

**Returns:** nothing (`void`)

## Accepted by

[ITOCGenerator.GenerateTOC](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/ITOCGenerator.md#generatetoc)
