
# IGUIManager interface

The `IGUIManager` interface represents the Graphical User interface portions of the Altium Designer application such as resizing panels, checking for certain hot key maps and status bars.

```csharp
public interface IGUIManager
```

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

## Properties

| Property | Type | Access | Description |
| --- | --- | --- | --- |
| [PanelDockedHeight](#paneldockedheight) | `int` | get; set |  |
| [PanelDockedWidth](#paneldockedwidth) | `int` | get; set |  |

### PanelDockedHeight

*No description yet.*

```csharp
int GetPanelDockedHeight(string argViewName);
void SetPanelDockedHeight(string argViewName, int argHeight);
```

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

### PanelDockedWidth

*No description yet.*

```csharp
int GetPanelDockedWidth(string argViewName);
void SetPanelDockedWidth(string argViewName, int argWidth);
```

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

## Methods

| Method | Returns | Description |
| --- | --- | --- |
| [AddKeyStrokeAndLaunch](#addkeystrokeandlaunch) | `bool` |  |
| [AddKeyToBuffer](#addkeytobuffer) | `bool` |  |
| [BeginDragDrop](#begindragdrop) | `void` |  |
| [CanMovePanel](#canmovepanel) | `bool` |  |
| [CanResizePanel](#canresizepanel) | `bool` | This method determines whether the panel can be resized or not. |
| [CurrentProcessLauncherAvailable](#currentprocesslauncheravailable) | `bool` | This method determines whether the current process launcher is available or not to use. |
| [DesignspaceUISupports](#designspaceuisupports) | `bool` |  |
| [DesignspaceValue](#designspacevalue) | `string` |  |
| [DoneTransparentToolbars](#donetransparenttoolbars) | `void` |  |
| [Dragging](#dragging) | `bool` |  |
| [DXPShortcutToDelphiShortcut](#dxpshortcuttodelphishortcut) | `string` |  |
| [GetActionListFromTree](#getactionlistfromtree) | [IExternalActionItemList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IExternalActionItemList.md) |  |
| [GetActivePLByCommand](#getactiveplbycommand) | [IProcessLauncherInfo](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IProcessLauncherInfo.md) |  |
| [GetAllAvailableHotkeys](#getallavailablehotkeys) | `void` |  |
| [GetCurrentFormHandle](#getcurrentformhandle) | `uint` |  |
| [GetFocusedPanelName](#getfocusedpanelname) | `string` |  |
| [GetPanelIsOpen](#getpanelisopen) | `bool` |  |
| [GetPanelIsOpenInAnyForm](#getpanelisopeninanyform) | `bool` |  |
| [GetPanelIsVisibleInAnyForm](#getpanelisvisibleinanyform) | `bool` |  |
| [GetProcessLauncherInfoByID](#getprocesslauncherinfobyid) | [IProcessLauncherInfo](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IProcessLauncherInfo.md) |  |
| [GetShortcutTextForPLID](#getshortcuttextforplid) | `string` |  |
| [HasTreeShownAsPopup](#hastreeshownaspopup) | `bool` |  |
| [HideDragImage](#hidedragimage) | `void` |  |
| [InitTransparentToolbars](#inittransparenttoolbars) | `void` |  |
| [IsPanelPinned](#ispanelpinned) | `bool` |  |
| [IsPanelValidInCurrentForm](#ispanelvalidincurrentform) | `bool` |  |
| [IsPanelVisibleInCurrentForm](#ispanelvisibleincurrentform) | `bool` |  |
| [IsSysLevelHotKey](#issyslevelhotkey) | `bool` |  |
| [LaunchCurrentHotkey](#launchcurrenthotkey) | `void` |  |
| [MovePanelTo](#movepanelto) | `void` |  |
| [ProcessMessage](#processmessage) | `bool` |  |
| [RegisterFloatingWindow](#registerfloatingwindow) | `void` |  |
| [RegisterUserProcessLauncher](#registeruserprocesslauncher) | [IProcessLauncherInfo](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IProcessLauncherInfo.md) |  |
| [ResizePanel](#resizepanel) | `void` |  |
| [SetFocusLock](#setfocuslock) | `void` |  |
| [SetPanelActiveInCurrentForm](#setpanelactiveincurrentform) | `void` |  |
| [SetPanelPinned](#setpanelpinned) | `void` |  |
| [SetPanelVisibleInCurrentForm](#setpanelvisibleincurrentform) | `void` |  |
| [SetTitleBarErrorMessage](#settitlebarerrormessage) | `void` |  |
| [ShowCurrentProcessLauncherHelp](#showcurrentprocesslauncherhelp) | `bool` |  |
| [ShowDragImage](#showdragimage) | `void` |  |
| [ShowStandardMenuAsPopup](#showstandardmenuaspopup) | `void` |  |
| [ShowTreeAsPopup](#showtreeaspopup) | `void` |  |
| [ShowTreeAsPopupAt](#showtreeaspopupat) | `void` |  |
| [StatusBar_GetState](#statusbar_getstate) | `string` |  |
| [StatusBar_SetState](#statusbar_setstate) | `void` |  |
| [StatusBarManager](#statusbarmanager) | [IStatusBarManager](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IStatusBarManager.md) |  |
| [UnregisterFloatingWindow](#unregisterfloatingwindow) | `void` |  |
| [UnregisterUserProcessLauncher](#unregisteruserprocesslauncher) | `void` |  |
| [UpdateInterfaceState](#updateinterfacestate) | `void` |  |
| [UpdateTransparentToolbars](#updatetransparenttoolbars) | `void` |  |

### AddKeyStrokeAndLaunch

*No description yet.*

```csharp
bool AddKeyStrokeAndLaunch(ushort argKey);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argKey` | `ushort` | value |

**Returns:** `bool`

### AddKeyToBuffer

*No description yet.*

```csharp
bool AddKeyToBuffer(int argKeyId, bool arglt, bool argShift, bool argCtrl);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argKeyId` | `int` | value |
| `arglt` | `bool` | value |
| `argShift` | `bool` | value |
| `argCtrl` | `bool` | value |

**Returns:** `bool`

### BeginDragDrop

*No description yet.*

```csharp
void BeginDragDrop(IDragDropObject argDragDropInfo);
void BeginDragDrop(object argDragDropInfo);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argDragDropInfo` | [IDragDropObject](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IDragDropObject.md) | value |

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

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

### CanMovePanel

*No description yet.*

```csharp
bool CanMovePanel(string argViewName);
```

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

**Returns:** `bool`

### CanResizePanel

This method determines whether the panel can be resized or not. The name of the panel need to be supplied.

```csharp
bool CanResizePanel(string argViewName);
```

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

**Returns:** `bool`

### CurrentProcessLauncherAvailable

This method determines whether the current process launcher is available or not to use.

```csharp
bool CurrentProcessLauncherAvailable();
```

**Returns:** `bool`

### DesignspaceUISupports

*No description yet.*

```csharp
bool DesignspaceUISupports(string argUIFeature);
```

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

**Returns:** `bool`

### DesignspaceValue

*No description yet.*

```csharp
string DesignspaceValue(string argSectionName, string argValueName);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argSectionName` | `string` | value |
| `argValueName` | `string` | value |

**Returns:** `string`

### DoneTransparentToolbars

*No description yet.*

```csharp
void DoneTransparentToolbars();
```

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

### Dragging

*No description yet.*

```csharp
bool Dragging();
```

**Returns:** `bool`

### DXPShortcutToDelphiShortcut

*No description yet.*

```csharp
string DXPShortcutToDelphiShortcut(string argShortcutText);
```

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

**Returns:** `string`

### GetActionListFromTree

*No description yet.*

```csharp
IExternalActionItemList GetActionListFromTree(string argTreeID);
```

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

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

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

### GetActivePLByCommand

*No description yet.*

```csharp
IProcessLauncherInfo GetActivePLByCommand(string argDocumentKind, string argCommand, string argParams);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argDocumentKind` | `string` | value |
| `argCommand` | `string` | value |
| `argParams` | `string` | value |

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

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

### GetAllAvailableHotkeys

*No description yet.*

```csharp
void GetAllAvailableHotkeys(out string argHotkeys, out string argDescriptions);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argHotkeys` | `string` | out |
| `argDescriptions` | `string` | out |

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

### GetCurrentFormHandle

*No description yet.*

```csharp
uint GetCurrentFormHandle();
```

**Returns:** `uint`

### GetFocusedPanelName

*No description yet.*

```csharp
string GetFocusedPanelName();
```

**Returns:** `string`

### GetPanelIsOpen

*No description yet.*

```csharp
bool GetPanelIsOpen(string argViewName);
```

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

**Returns:** `bool`

### GetPanelIsOpenInAnyForm

*No description yet.*

```csharp
bool GetPanelIsOpenInAnyForm(string argViewName);
```

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

**Returns:** `bool`

### GetPanelIsVisibleInAnyForm

*No description yet.*

```csharp
bool GetPanelIsVisibleInAnyForm(string argViewName);
```

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

**Returns:** `bool`

### GetProcessLauncherInfoByID

*No description yet.*

```csharp
IProcessLauncherInfo GetProcessLauncherInfoByID(string argPLID);
```

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

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

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

### GetShortcutTextForPLID

*No description yet.*

```csharp
string GetShortcutTextForPLID(string argPLID);
```

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

**Returns:** `string`

### HasTreeShownAsPopup

*No description yet.*

```csharp
bool HasTreeShownAsPopup();
```

**Returns:** `bool`

### HideDragImage

*No description yet.*

```csharp
void HideDragImage();
```

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

### InitTransparentToolbars

*No description yet.*

```csharp
void InitTransparentToolbars(Rect argViewRect);
void InitTransparentToolbars(IRect argViewRect);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argViewRect` | [Rect](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/Rect.md) | value |

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

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

### IsPanelPinned

*No description yet.*

```csharp
bool IsPanelPinned(string argViewName);
```

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

**Returns:** `bool`

### IsPanelValidInCurrentForm

*No description yet.*

```csharp
bool IsPanelValidInCurrentForm(string argViewName);
```

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

**Returns:** `bool`

### IsPanelVisibleInCurrentForm

*No description yet.*

```csharp
bool IsPanelVisibleInCurrentForm(string argViewName);
```

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

**Returns:** `bool`

### IsSysLevelHotKey

*No description yet.*

```csharp
bool IsSysLevelHotKey(int argKeyId, bool arglt, bool argShift, bool argCtrl);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argKeyId` | `int` | value |
| `arglt` | `bool` | value |
| `argShift` | `bool` | value |
| `argCtrl` | `bool` | value |

**Returns:** `bool`

### LaunchCurrentHotkey

*No description yet.*

```csharp
void LaunchCurrentHotkey();
```

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

### MovePanelTo

*No description yet.*

```csharp
void MovePanelTo(string argViewName, int argLeft, int argTop);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argViewName` | `string` | value |
| `argLeft` | `int` | value |
| `argTop` | `int` | value |

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

### ProcessMessage

*No description yet.*

```csharp
bool ProcessMessage(ref Message argMsg);
bool ProcessMessage(ref IMessage argMsg);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argMsg` | [Message](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/Message.md) | ref |

**Returns:** `bool`

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

### RegisterFloatingWindow

*No description yet.*

```csharp
void RegisterFloatingWindow(IFloatingWindow argFloatingWindow);
void RegisterFloatingWindow(object argFloatingWindow);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argFloatingWindow` | [IFloatingWindow](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IFloatingWindow.md) | value |

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

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

### RegisterUserProcessLauncher

*No description yet.*

```csharp
IProcessLauncherInfo RegisterUserProcessLauncher(string argPreferredID, string argServerCommand, string argParameters, string argCaption, string argDescription, string argImageFile, string argShortcutText, string argShortcut2Text);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argPreferredID` | `string` | value |
| `argServerCommand` | `string` | value |
| `argParameters` | `string` | value |
| `argCaption` | `string` | value |
| `argDescription` | `string` | value |
| `argImageFile` | `string` | value |
| `argShortcutText` | `string` | value |
| `argShortcut2Text` | `string` | value |

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

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

### ResizePanel

*No description yet.*

```csharp
void ResizePanel(string argViewName, int argWidth, int argHeight);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argViewName` | `string` | value |
| `argWidth` | `int` | value |
| `argHeight` | `int` | value |

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

### SetFocusLock

*No description yet.*

```csharp
void SetFocusLock(bool argLocked);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argLocked` | `bool` | value |

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

### SetPanelActiveInCurrentForm

*No description yet.*

```csharp
void SetPanelActiveInCurrentForm(string argViewName);
```

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

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

### SetPanelPinned

*No description yet.*

```csharp
void SetPanelPinned(string argViewName, bool argIsPinned);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argViewName` | `string` | value |
| `argIsPinned` | `bool` | value |

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

### SetPanelVisibleInCurrentForm

*No description yet.*

```csharp
void SetPanelVisibleInCurrentForm(string argViewName, bool argIsVisible);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argViewName` | `string` | value |
| `argIsVisible` | `bool` | value |

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

### SetTitleBarErrorMessage

*No description yet.*

```csharp
void SetTitleBarErrorMessage(string argErrorMessage);
```

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

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

### ShowCurrentProcessLauncherHelp

*No description yet.*

```csharp
bool ShowCurrentProcessLauncherHelp();
```

**Returns:** `bool`

### ShowDragImage

*No description yet.*

```csharp
void ShowDragImage();
```

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

### ShowStandardMenuAsPopup

*No description yet.*

```csharp
void ShowStandardMenuAsPopup(IMenuWrapper argMenuWrapper, Point argPosition);
void ShowStandardMenuAsPopup(object argMenuWrapper, IPoint argPosition);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argMenuWrapper` | [IMenuWrapper](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IMenuWrapper.md) | value |
| `argPosition` | [Point](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/Point.md) | value |

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

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

### ShowTreeAsPopup

*No description yet.*

```csharp
void ShowTreeAsPopup(string argTreeID);
```

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

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

### ShowTreeAsPopupAt

*No description yet.*

```csharp
void ShowTreeAsPopupAt(string argTreeID, Point argPosition);
void ShowTreeAsPopupAt(string argTreeID, IPoint argPosition);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argTreeID` | `string` | value |
| `argPosition` | [Point](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/Point.md) | value |

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

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

### StatusBar_GetState

*No description yet.*

```csharp
string StatusBar_GetState(int argIndex);
```

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

**Returns:** `string`

### StatusBar_SetState

*No description yet.*

```csharp
void StatusBar_SetState(int argIndex, string argS);
```

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

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

### StatusBarManager

*No description yet.*

```csharp
IStatusBarManager StatusBarManager();
```

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

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

### UnregisterFloatingWindow

*No description yet.*

```csharp
void UnregisterFloatingWindow(IFloatingWindow argFloatingWindow);
void UnregisterFloatingWindow(object argFloatingWindow);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argFloatingWindow` | [IFloatingWindow](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IFloatingWindow.md) | value |

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

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

### UnregisterUserProcessLauncher

*No description yet.*

```csharp
void UnregisterUserProcessLauncher(string argPLID);
```

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

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

### UpdateInterfaceState

*No description yet.*

```csharp
void UpdateInterfaceState();
```

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

### UpdateTransparentToolbars

*No description yet.*

```csharp
void UpdateTransparentToolbars();
```

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

## Returned by

[IClient.GetGUIManager](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IClient.md#getguimanager), [GlobalVars.GUIManager](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/GlobalVars.md#guimanager)
