public class NotificationWidgetFactory extends java.lang.Object implements StatusBarWidgetFactory
EP_NAME| Constructor and Description |
|---|
NotificationWidgetFactory() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
canBeEnabledOn(StatusBar statusBar) |
StatusBarWidget |
createWidget(Project project)
Creates a widget to be added to the status bar.
|
void |
disposeWidget(StatusBarWidget widget) |
java.lang.String |
getDisplayName() |
java.lang.String |
getId() |
static boolean |
isAvailable() |
boolean |
isAvailable(Project project)
Returns availability of widget.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitisConfigurable, isEnabledByDefaultpublic static boolean isAvailable()
public java.lang.String getId()
getId in interface StatusBarWidgetFactorypublic java.lang.String getDisplayName()
getDisplayName in interface StatusBarWidgetFactorypublic boolean isAvailable(Project project)
StatusBarWidgetFactory
`False` means that IDE won't try to create a widget or will dispose it on StatusBarWidgetsManager.updateWidget(java.lang.Class<? extends com.intellij.openapi.wm.StatusBarWidgetFactory>) call.
E.g. `false` can be returned for
Whenever availability is changed, you need to call StatusBarWidgetsManager.updateWidget(StatusBarWidgetFactory)
explicitly to get status bar updated.
isAvailable in interface StatusBarWidgetFactorypublic StatusBarWidget createWidget(Project project)
StatusBarWidgetFactoryOnce the method is invoked on project initialization, the widget won't be recreated or disposed implicitly.
You may need to recreate it if:
StatusBarWidgetFactory.isAvailable(Project)com.intellij.openapi.wm.impl.status.widget.StatusBarWidgetSettings
To do this, you need to explicitly invoke StatusBarWidgetsManager.updateWidget(StatusBarWidgetFactory)
to recreate the widget and re-add it to the status bar.
createWidget in interface StatusBarWidgetFactorypublic void disposeWidget(StatusBarWidget widget)
disposeWidget in interface StatusBarWidgetFactorypublic boolean canBeEnabledOn(StatusBar statusBar)
canBeEnabledOn in interface StatusBarWidgetFactory
It's better to have this method aligned with EditorBasedStatusBarPopup.WidgetState.HIDDEN,
whenever state is HIDDEN, this method should return false.
Otherwise enabling widget via context menu won't take any visual effect.
E.g. EditorBasedWidget are available if editor is opened in a frame that given status bar is attached to
For creating editor based widgets see also StatusBarEditorBasedWidgetFactory