Package xtwm.plugins
Class SystemMonitor
- java.lang.Object
-
- jexer.TWidget
-
- xtwm.plugins.PluginWidget
-
- xtwm.plugins.SystemMonitor
-
- All Implemented Interfaces:
java.lang.Comparable<TWidget>
public class SystemMonitor extends PluginWidget
SystemMonitor is a simple real-time performance monitor that shows the CPU, memory, and disk usage exposed to the JVM through the Java management interfaces (java.lang.management).
-
-
Field Summary
-
Fields inherited from class xtwm.plugins.PluginWidget
app, loadOnStartup, pluginEnabled
-
-
Constructor Summary
Constructors Constructor Description SystemMonitor()
No-argument constructor that is intended only for use by XTWMApplication.loadPlugin().SystemMonitor(TWidget parent)
Public constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
draw()
Draw the values obtained from the Java management interfaces.java.lang.String
getApplicationCommand()
Get the command line to execute if this is an "Application" plugin.java.lang.String
getMenuMnemonic()
Get the translated menu label for this plugin.java.lang.String
getPluginDescription()
Get the translated full description for this plugin.java.lang.String
getPluginName()
Get the translated short name for this plugin.TWidget
getPluginSettingsEditor(TWidget parent)
Get an interface for editing the plugin settings.int
getPreferredHeight()
Get the desired height when rendering this plugin.int
getPreferredWidth()
Get the desired width when rendering this plugin.java.lang.String
getWindowTitle()
Get the translated window title for this plugin.void
initialize(XTWMApplication app)
Initialize the plugin.boolean
isApplication()
See if this is an "Application" plugin.boolean
isOnAllDesktops()
Whether or not this plugin should be on all desktops when loaded as a widget at startup.boolean
isResizable()
Check if widget should be in a resizable window.boolean
isWidget()
See if this is a "Widget" plugin.-
Methods inherited from class xtwm.plugins.PluginWidget
closeFromMenu, getOption, getOption, getWindow, isLoadOnStartup, isPluginEnabled, isWindowed, makeDataFile, onMenu, setLoadOnStartup, setOption, setPluginEnabled
-
Methods inherited from class jexer.TWidget
activate, activate, activate, activateAll, addButton, addCalendar, addCheckBox, addCheckBox, addComboBox, addDirectoryList, addDirectoryList, addDirectoryList, addDirectoryList, addEditor, addField, addField, addField, addField, addImage, addImage, addLabel, addLabel, addLabel, addLabel, addLabel, addLabel, addList, addList, addList, addList, addPanel, addPasswordField, addPasswordField, addPasswordField, addProgressBar, addRadioGroup, addRadioGroup, addSpinner, addSplitPane, addTable, addTable, addText, addText, addTreeViewWidget, addTreeViewWidget, close, compareTo, doRepaint, drawBox, drawBox, drawBoxShadow, drawChildren, fileOpenBox, fileOpenBox, fileOpenBox, fileOpenBox, fileSaveBox, getAbsoluteX, getAbsoluteY, getActiveChild, getApplication, getAttrXY, getChildren, getClipboard, getCursorAbsoluteX, getCursorAbsoluteY, getCursorX, getCursorY, getHeight, getLayoutManager, getParent, getScreen, getTheme, getWidth, getWindow, getX, getY, handleEvent, hasChild, hLineXY, inputBox, inputBox, inputBox, isAbsoluteActive, isActive, isCursorVisible, isDrawable, isEchoKeystrokes, isEnabled, isVisible, messageBox, messageBox, mouseWouldHit, onCommand, onIdle, onKeypress, onMouseDoubleClick, onMouseDown, onMouseMotion, onMouseUp, onResize, putAll, putAttrXY, putAttrXY, putCharXY, putCharXY, putCharXY, putStringXY, putStringXY, remove, remove, remove, remove, removeAll, resetTabOrder, setActive, setCursorVisible, setCursorX, setCursorY, setDimensions, setEchoKeystrokes, setEchoKeystrokes, setEnabled, setHeight, setLayoutManager, setParent, setupForTWindow, setVisible, setWidth, setWindow, setX, setY, splitHorizontal, splitVertical, switchWidget, toPrettyString, toPrettyString, toString, vLineXY
-
-
-
-
Constructor Detail
-
SystemMonitor
public SystemMonitor(TWidget parent)
Public constructor.- Parameters:
parent
- parent widget
-
SystemMonitor
public SystemMonitor()
No-argument constructor that is intended only for use by XTWMApplication.loadPlugin().
-
-
Method Detail
-
draw
public void draw()
Draw the values obtained from the Java management interfaces.
-
initialize
public void initialize(XTWMApplication app)
Initialize the plugin. Since plugins are required to have a no-argument constructor, this method is called to provide a hook for the plugin to perform initialization. Subclasses that override initialize should call super.initialize() to set the XTWMApplication reference.- Overrides:
initialize
in classPluginWidget
- Parameters:
app
- the application that will be using this plugin
-
getMenuMnemonic
public java.lang.String getMenuMnemonic()
Get the translated menu label for this plugin.- Specified by:
getMenuMnemonic
in classPluginWidget
- Returns:
- a mnemonic string that will be populated in the menu
-
getPluginName
public java.lang.String getPluginName()
Get the translated short name for this plugin.- Specified by:
getPluginName
in classPluginWidget
- Returns:
- a short name, e.g. "SystemMonitor"
-
getPluginDescription
public java.lang.String getPluginDescription()
Get the translated full description for this plugin.- Specified by:
getPluginDescription
in classPluginWidget
- Returns:
- a short name, e.g. "A simple monitor for the JVM."
-
isApplication
public boolean isApplication()
See if this is an "Application" plugin.- Specified by:
isApplication
in classPluginWidget
- Returns:
- true if this plugin should be listed the Application | Programs menu
-
getApplicationCommand
public java.lang.String getApplicationCommand()
Get the command line to execute if this is an "Application" plugin.- Specified by:
getApplicationCommand
in classPluginWidget
- Returns:
- a command line
-
isWidget
public boolean isWidget()
See if this is a "Widget" plugin.- Specified by:
isWidget
in classPluginWidget
- Returns:
- true if this plugin should be available in the Application | Widgets meny and the Panel | "Switch to" dialog
-
getWindowTitle
public java.lang.String getWindowTitle()
Get the translated window title for this plugin.- Specified by:
getWindowTitle
in classPluginWidget
- Returns:
- the title for the window when this widget is opened in the Application | Widgets menu, or null if this widget should have no title for its window.
-
isOnAllDesktops
public boolean isOnAllDesktops()
Whether or not this plugin should be on all desktops when loaded as a widget at startup.- Overrides:
isOnAllDesktops
in classPluginWidget
- Returns:
- true if this plugin should be on all desktops
-
getPluginSettingsEditor
public TWidget getPluginSettingsEditor(TWidget parent)
Get an interface for editing the plugin settings.- Overrides:
getPluginSettingsEditor
in classPluginWidget
- Parameters:
parent
- parent widget- Returns:
- a widget that has settings
-
getPreferredWidth
public int getPreferredWidth()
Get the desired width when rendering this plugin.- Specified by:
getPreferredWidth
in classPluginWidget
- Returns:
- the width
-
getPreferredHeight
public int getPreferredHeight()
Get the desired height when rendering this plugin.- Specified by:
getPreferredHeight
in classPluginWidget
- Returns:
- the height
-
isResizable
public boolean isResizable()
Check if widget should be in a resizable window.- Overrides:
isResizable
in classPluginWidget
- Returns:
- true if the widget should be resizable when in a window
-
-