# Class: RightPanelWidget

## RightPanelWidget()

This widget manages rendering panels in the right-hand pane.

## Constructor

#### new RightPanelWidget()

Source:
  - widgets/right_panel_widget.js, line 21

### Extends

- NoteContextAwareWidget

### Members

#### hoistedNoteId

Overrides:
  - NoteContextAwareWidget#hoistedNoteId
Source:
  - widgets/note_context_aware_widget.js, line 42

#### note

Overrides:
  - NoteContextAwareWidget#note
Source:
  - widgets/note_context_aware_widget.js, line 27

#### noteContext :NoteContext

##### Type:

- NoteContext

Overrides:
  - NoteContextAwareWidget#noteContext
Source:
  - widgets/note_context_aware_widget.js, line 123

#### noteId

Overrides:
  - NoteContextAwareWidget#noteId
Source:
  - widgets/note_context_aware_widget.js, line 32

#### notePath

Overrides:
  - NoteContextAwareWidget#notePath
Source:
  - widgets/note_context_aware_widget.js, line 37

#### widgetTitle

Title to show in the panel.

Source:
  - widgets/right_panel_widget.js, line 23

### Methods

#### css(name, value)

Sets the CSS attribute of the given name to the given value.

##### Parameters:

Name | Type | Description
--- | --- | ---
`name` | string | the name of the CSS attribute to set (e.g. `padding-left`).
`value` | string | the value of the CSS attribute to set (e.g. `12px`).

Overrides:
  - NoteContextAwareWidget#css
Source:
  - widgets/basic_widget.js, line 75

##### Returns:

self for chaining.

#### cssBlock(block) → {this}

Accepts a string of CSS to add with the widget.

##### Parameters:

Name | Type | Description
--- | --- | ---
`block` | string |

Overrides:
  - NoteContextAwareWidget#cssBlock
Source:
  - widgets/basic_widget.js, line 118

##### Returns:

for chaining

Type
  this

#### doRender()

Do not override this method unless you know what you're doing. Do not override this method unless you know what you're doing.

Overrides:
  - NoteContextAwareWidget#doRender
Source:
  - widgets/right_panel_widget.js, line 39

#### (async) doRenderBody() → {Promise|undefined}

Method used for rendering the body of the widget (via existing this.$body) Your class should override this method.

Source:
  - widgets/right_panel_widget.js, line 70

##### Returns:

if widget needs async operation to initialize, it can return a Promise

Type
  Promise | undefined

#### isEnabled() → {boolean}

Indicates if the widget is enabled. Widgets are enabled by default. Generally setting this to `false` will cause the widget not to be displayed, however it will still be available on the DOM but hidden.

If the widget is not enabled, it will not receive `refreshWithNote` updates.

Overrides:
  - NoteContextAwareWidget#isEnabled
Source:
  - widgets/note_context_aware_widget.js, line 58

##### Returns:

true when an active note exists

Type
  boolean

#### optChild(condition, …components)

Conditionally adds the given components as children to this component.

##### Parameters:

Name | Type | Attributes | Description
--- | --- | --- | ---
`condition` | boolean |  | whether to add the components.
`components` | any | <repeatable> | the components to be added as children to this component provided the condition is truthy.

Overrides:
  - NoteContextAwareWidget#optChild
Source:
  - widgets/basic_widget.js, line 50

##### Returns:

self for chaining.

#### optCss(condition, name, value)

Sets the CSS attribute of the given name to the given value, but only if the condition provided is truthy.

##### Parameters:

Name | Type | Description
--- | --- | ---
`condition` | boolean | `true` in order to apply the CSS, `false` to ignore it.
`name` | string | the name of the CSS attribute to set (e.g. `padding-left`).
`value` | string | the value of the CSS attribute to set (e.g. `12px`).

Overrides:
  - NoteContextAwareWidget#optCss
Source:
  - widgets/basic_widget.js, line 88

##### Returns:

self for chaining.

#### (async) refreshWithNote(note) → {Promise.<void>}

Override this method to be able to refresh your widget with each note.

##### Parameters:

Name | Type | Description
--- | --- | ---
`note` | FNote |

Overrides:
  - NoteContextAwareWidget#refreshWithNote
Source:
  - widgets/note_context_aware_widget.js, line 88

##### Returns:

Type
  Promise.<void>