{"_id":"5b1f8576c2505d00031254a6","category":{"_id":"5b1f8576c2505d0003125425","version":"5b1f8576c2505d00031254db","project":"571fa55ca0acd42000af9545","__v":0,"sync":{"url":"","isSync":false},"reference":false,"createdAt":"2016-07-31T16:56:01.612Z","from_sync":false,"order":1,"slug":"prefabs","title":"Prefabs"},"user":"571fa519db52d01700f5cf3d","parentDoc":null,"project":"571fa55ca0acd42000af9545","version":{"_id":"5b1f8576c2505d00031254db","project":"571fa55ca0acd42000af9545","__v":4,"forked_from":"594949e52be16d0026ec04cd","createdAt":"2017-06-20T16:14:29.816Z","releaseDate":"2017-06-20T16:14:29.816Z","categories":["5b1f8576c2505d0003125424","5b1f8576c2505d0003125425","5b1f8576c2505d0003125426","5b1f8576c2505d0003125427","5b1f8576c2505d0003125428","5b1f8576c2505d0003125429","5b1f8576c2505d000312542a","5b1f8576c2505d000312542b","5b1f8576c2505d000312542c","5b1f8576c2505d000312542d","5b1f8576c2505d000312542e","5b1f8576c2505d000312542f","5b1f8576c2505d0003125430","5b1f8576c2505d0003125431","5b1f8576c2505d0003125432","5b1f8576c2505d0003125433","5b1f8576c2505d0003125434","5b1f8576c2505d0003125435","5b1f8576c2505d0003125436","5b1f8576c2505d0003125437","5b1f8576c2505d0003125438","5b1f8aab9c683000032979e7","5b1f8b2f3073470003ffa5da","5b1f8bd9fd653400031d94f4","5b1f900bd4c5f000036b57bd"],"is_deprecated":false,"is_hidden":false,"is_beta":false,"is_stable":true,"codename":"Mangalica","version_clean":"3.3.0","version":"3.3.0"},"githubsync":"","__v":0,"updates":[],"next":{"pages":[],"description":""},"createdAt":"2016-10-16T08:08:17.124Z","link_external":false,"link_url":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","auth":"required","params":[],"url":""},"isReference":false,"order":13,"body":"## Overview\n\nAdds a top-level controller to handle the display of up to four child PanelMenuItemController items which are displayed as a canvas UI panel.\n\n**Prefab Usage:**\n * Place the `VRTK/Prefabs/PanelMenu/PanelMenu` prefab as a child of the `VRTK_InteractableObject` the panel menu is for.\n * Optionally remove the panel control menu item child GameObjects if they are not required, e.g. `PanelTopControls`.\n * Set the panel menu item controllers on the `VRTK_PanelMenuController` script to determine which panel control menu items are available.\n * The available panel control menu items can be activated by pressing the corresponding direction on the touchpad.\n\n## Inspector Parameters\n\n * **Rotate Towards:** The GameObject the panel should rotate towards, which is the Camera (eye) by default.\n * **Zoom Scale Multiplier:** The scale multiplier, which relates to the scale of parent interactable object.\n * **Top Panel Menu Item Controller:** The top PanelMenuItemController, which is triggered by pressing up on the controller touchpad.\n * **Bottom Panel Menu Item Controller:** The bottom PanelMenuItemController, which is triggered by pressing down on the controller touchpad.\n * **Left Panel Menu Item Controller:** The left PanelMenuItemController, which is triggered by pressing left on the controller touchpad.\n * **Right Panel Menu Item Controller:** The right PanelMenuItemController, which is triggered by pressing right on the controller touchpad.\n\n## Class Methods\n\n### ToggleMenu/0\n\n  > `public virtual void ToggleMenu()`\n\n * Parameters\n   * _none_\n * Returns\n   * _none_\n\nThe ToggleMenu method is used to show or hide the menu.\n\n### ShowMenu/0\n\n  > `public virtual void ShowMenu()`\n\n * Parameters\n   * _none_\n * Returns\n   * _none_\n\nThe ShowMenu method is used to show the menu.\n\n### HideMenu/1\n\n  > `public virtual void HideMenu(bool force)`\n\n * Parameters\n   * `bool force` - If true then the menu is always hidden.\n * Returns\n   * _none_\n\nThe HideMenu method is used to hide the menu.\n\n### HideMenuImmediate/0\n\n  > `public virtual void HideMenuImmediate()`\n\n * Parameters\n   * _none_\n * Returns\n   * _none_\n\nThe HideMenuImmediate method is used to immediately hide the menu.\n\n## Example\n\n`040_Controls_Panel_Menu` contains three basic interactive object examples of the PanelMenu in use.","excerpt":"","slug":"panel-menu-controller","type":"basic","title":"Panel Menu Controller"}

Panel Menu Controller


## Overview Adds a top-level controller to handle the display of up to four child PanelMenuItemController items which are displayed as a canvas UI panel. **Prefab Usage:** * Place the `VRTK/Prefabs/PanelMenu/PanelMenu` prefab as a child of the `VRTK_InteractableObject` the panel menu is for. * Optionally remove the panel control menu item child GameObjects if they are not required, e.g. `PanelTopControls`. * Set the panel menu item controllers on the `VRTK_PanelMenuController` script to determine which panel control menu items are available. * The available panel control menu items can be activated by pressing the corresponding direction on the touchpad. ## Inspector Parameters * **Rotate Towards:** The GameObject the panel should rotate towards, which is the Camera (eye) by default. * **Zoom Scale Multiplier:** The scale multiplier, which relates to the scale of parent interactable object. * **Top Panel Menu Item Controller:** The top PanelMenuItemController, which is triggered by pressing up on the controller touchpad. * **Bottom Panel Menu Item Controller:** The bottom PanelMenuItemController, which is triggered by pressing down on the controller touchpad. * **Left Panel Menu Item Controller:** The left PanelMenuItemController, which is triggered by pressing left on the controller touchpad. * **Right Panel Menu Item Controller:** The right PanelMenuItemController, which is triggered by pressing right on the controller touchpad. ## Class Methods ### ToggleMenu/0 > `public virtual void ToggleMenu()` * Parameters * _none_ * Returns * _none_ The ToggleMenu method is used to show or hide the menu. ### ShowMenu/0 > `public virtual void ShowMenu()` * Parameters * _none_ * Returns * _none_ The ShowMenu method is used to show the menu. ### HideMenu/1 > `public virtual void HideMenu(bool force)` * Parameters * `bool force` - If true then the menu is always hidden. * Returns * _none_ The HideMenu method is used to hide the menu. ### HideMenuImmediate/0 > `public virtual void HideMenuImmediate()` * Parameters * _none_ * Returns * _none_ The HideMenuImmediate method is used to immediately hide the menu. ## Example `040_Controls_Panel_Menu` contains three basic interactive object examples of the PanelMenu in use.