Class Reference
IRIS for UNIX 2024.1.2
InterSystems: The power behind what matters   
Documentation  Search
  [USER] >  [%DeepSee] >  [Component] >  [Widget] >  [widget]
Private  Storage   

abstract class %DeepSee.Component.Widget.widget extends %ZEN.Component.dragGroup

Base class for DeepSee Dashboard widgets.
Instances of this class, or its subclasses, represent graphical items within a DeepSee Dashboard (such as a pivot, chart, or meter).

Inventory

Parameters Properties Methods Queries Indices ForeignKeys Triggers
12 39 85


Summary

Properties
%condition %definition %import %includeFiles
%page %resource align aux
backgroundColor cellAlign cellSize cellStyle
cellVAlign centerHeader children clickActions
clickActive clickFilterSpec clickTargetProperties clickTargets
colSpan colorToolbar composite containerStyle
controlIndices currFilterSpec currItemNo currSeriesNo
currValue currValueName dataSource disabled
dragEnabled dropEnabled enclosingClass enclosingStyle
error filterDefault filterState filterText
forceToolbar groupClass groupStyle hasInitialFilters
header headerLayout height hidden
hint hintClass hintStyle homeCol
homeRow id imageAppLogo imageAppLogoWidth
imageClose imageCloseHover imageCloseWidth imageContract
imageContractHover imageContractWidth imageExpand imageExpandHover
imageExpandWidth imageMaximize imageMaximizeHover imageMaximizeWidth
imageMinimize imageMinimizeHover imageMinimizeWidth imageResize
imageResizeSize index isClosed label
labelClass labelDisabledClass labelPosition labelStyle
layout linkWidgetKey maximized minWidth
moveEnabled name onafterdrag onbeforedrag
onclick onclosepending ondrag ondrop
onhide onrefresh onresize onshow
onupdate onwindowdrop onwindowgrab opacity
opacityToolbar parent prevHomeCol prevHomeRow
previewMode resizeEnabled rowSpan sessionCookie
settings showLabel showSidebar showToolbar
showToolbarBottomBorder showToolbarOnlyWhenMaximized sidebarContent sidebarWidth
slice subtype title tuple
valign visible widgetKey widgetLayout
width window

Methods
%AddChild %AddChildAfter %AddChildBefore %AddFooter
%AddSidebar %AddToSaveSet %Attr %BindExport
%ClassIsLatestVersion %ClassName %ConstructClone %DispatchClassMethod
%DispatchGetModified %DispatchGetProperty %DispatchMethod %DispatchSetModified
%DispatchSetMultidimProperty %DispatchSetProperty %DrawComponentHTML %DrawHTML
%DrawJSStrings %EnclosingDivId %Eval %EvalC
%Extends %FindComponent %ForceClientRender %GetCatalogInfo
%GetChildIndex %GetDataController %GetEventHandlers %GetParameter
%GetWidgetPropertyInfo %GetWidgetSettings %GetXMLName %IsA
%IsModified %MakeId %MakeWidgetId %New
%NormalizeObject %ObjectModified %OnAddToPageAfter %OnAddToPageBefore
%OnCreateControls %OnCreateWidget %OnDrawEnclosingDiv %OnDrawObjectProperties
%OnMutateChildren %OnObjectSynch %OnZENDeserialize %OriginalNamespace
%PackageName %QuoteValue %QuoteValueL10N %RemoveChild
%RemoveChildren %RemoveFromSaveSet %Self %SerializeObject
%SetModified %ValidateObject GetKpiFilterCaption ResolveText
XMLDTD XMLExport XMLExportToStream XMLExportToString
XMLNew XMLSchema XMLSchemaNamespace XMLSchemaType
abortClose addChild addChildAfter addChildBefore
adjustChildArea adjustContentSize adjustHandleWidth adjustResizeBox
adjustSizes animateIcon applyCSSSettings childrenMutated
close closeWidget compress constrainDragX
constrainDragY controlEventHandler disableCoverplate disableDrag
disableHeaderMaxToggle disableResize dragFinishHandler dragHandler
dragNotifyHandler dragStartHandler dropHandler dropStartHandler
enableCoverplate enableDrag enableHeaderMaxToggle enableResize
endDrag expand exposeComponent findComponent
findElement fireOnUpdateEvent getChildDiv getChildIndex
getCoverplateDiv getDataController getDefinition getEnclosingDiv
getFilterTableForPrinting getHeaderDiv getHeaderUserDiv getHidden
getHintElement getLabelElement getOverrideSkipList getOverrides
getProperty getSVGFrame getSettingDisplayValue getSettingLists
getSettings getState getSubtypeClass getType
getWindowHeight getWindowWidth hasOverrides initializeHomeRowCol
invokeSuper isCompressed isMasterWidget isMaximized
isOfType isResizeInProgress makeId maximize
navCloseButtonClick navDataArrange navDataChange navHeaderButtonClick
navPopupAction navSelectItem onCreate onDelete
onDisplayHandler onEndModalHandler onGrabHandler onPopupAction
onRefreshContents onReleaseHandler onSerialize onStartModalHandler
ondisabledHandler onloadHandler onresizeHandler onunloadHandler
onupdateHandler openWidget printSVGContent processAppMessage
raiseEventHandler refreshContents removeChild removeWindowChrome
render renderContents renderCoverplate renderHeader
renderResize renderSVG resetOverrides resetWindowChrome
resize restoreGeometry restoreState saveGeometry
selectWidget setAppLogo setBodyStyle setCenterLayout
setCloseIcon setContractIcon setExpandIcon setHeaderLayout
setHeaderStyle setHidden setIcon setMaximizeIcon
setMinimizeIcon setModifiedIfDragged setOpacity setOverlayMode
setProperty setPropertyAll setToolbarProperty showBreakdown
showDimensions showGeoListing showListing startDrag
startProgressBar stopProgressBar syncObject updateMenuBar
verifyHeaderGeometry

Subclasses
%DeepSee.Component.Widget.calendar %DeepSee.Component.Widget.controlPanel %DeepSee.Component.Widget.map
%DeepSee.Component.Widget.meter %DeepSee.Component.Widget.pivot %DeepSee.Component.Widget.portlet
%DeepSee.Component.Widget.scoreCardWidget %DeepSee.Component.Widget.worksheet

Parameters

• parameter DEFAULTCLOSEIMAGE = "images/MacCloseX.png";
Default image for close group button.
• parameter DEFAULTCONTRACTIMAGE = "images/MacIconifyDash.png";
Default image for contract group button.
• parameter DEFAULTEXPANDIMAGE = "images/MacIconifyDash.png";
Default image for expand group button.
• parameter DEFAULTHEADERLAYOUT = "CIFT";
Default header layout pattern. N.B. Overridden in code.
• parameter DEFAULTMAXIMAGE = "images/MacFullScreenPlus.png";
Default image for maximize group button.
• parameter DEFAULTMINIMAGE = "images/MacIconifyDash.png";
Default image for minimize group button.
• parameter DEFAULTRESIZEICONSIZE = 16;
Default resize icon size in pixels
• parameter DEFAULTRESIZEIMAGE = "images/grayDragResize.png";
Default image for maximize group button.
• parameter DOMAIN = "%DeepSee";
• parameter JSINCLUDES = "zenCSLM.js,zenESVG.js,DeepSee.js";
• parameter NAMESPACE = "http://www.intersystems.com/deepsee";
This is the XML namespace used for library components.
• parameter PUBLISHED = 1;
Set this to false to prevent this widget from being listed.

Properties

• property %definition as %DeepSee.Dashboard.Widget(XMLPROJECTION="none");
Used to hold a reference to the widget definition that defined this widget.
• property backgroundColor as %ZEN.Datatype.color(XMLPROJECTION="NONE") [ InitialExpression = "#F0F0F0" ];
color of widget background
• property clickActions as list of %ZEN.Datatype.string(XMLPROJECTION="NONE");
Names of actions to raise for click events.
• property clickActive as list of %ZEN.Datatype.string(XMLPROJECTION="NONE");
Names of activeWhen values for click events.
• property clickFilterSpec as %ZEN.Datatype.string(XMLPROJECTION="NONE");
Special filter value applied to this widget in response to a click event. Also used to handle filters passed in as part of the URL that are not mapped to a filter control.
If this starts with "%FILTER ", then this is one or more %FILTER clauses.
• property clickTargetProperties as list of %ZEN.Datatype.string(XMLPROJECTION="NONE");
Names of target properties for click events.
• property clickTargets as list of %ZEN.Datatype.string(XMLPROJECTION="NONE");
Names of target widgets to send click events to.
• property colorToolbar as %ZEN.Datatype.color(XMLPROJECTION="NONE") [ InitialExpression = "#F0F0F0" ];
color of toolbar
• property controlIndices as list of %ZEN.Datatype.integer(XMLPROJECTION="NONE");
Array of component indices for controls created by this widget.
• property currFilterSpec as %ZEN.Datatype.string(XMLPROJECTION="NONE");
Filter spec for most recently selected item on this widget, if applicable. If this starts with "%FILTER ", then it contains one or more "%FILTER" clauses.
• property currItemNo as %ZEN.Datatype.integer(XMLPROJECTION="NONE");
Item number for most recently selected item on this widget, if applicable.
• property currSeriesNo as %ZEN.Datatype.integer(XMLPROJECTION="NONE");
Series number for most recently selected item on this widget, if applicable.
• property currValue as %ZEN.Datatype.string(XMLPROJECTION="NONE");
Value of most recently selected item on this widget, if applicable.
• property currValueName as %ZEN.Datatype.string(XMLPROJECTION="NONE");
Value name for most recently selected item on this widget, if applicable.
• property dataSource as %ZEN.Datatype.string(XMLPROJECTION="NONE");
Holder for dataSource.
• property filterDefault as array of %ZEN.Datatype.string(XMLPROJECTION="NONE");
Array of default values of filters on this widget.
This is used to prevent saving of default values for widgets. This augments the filterState property.
• property filterState as array of %ZEN.Datatype.string(XMLPROJECTION="NONE");
Array of logical names of filters on this widget and their current values.
Each name is of the form: [DIM].[HIER].[LEVEL]
Each value is an MDX key value.
• property filterText as array of %ZEN.Datatype.string(XMLPROJECTION="NONE");
Array of logical names of filters on this widget and their current display value.
This augments the filterState property.
• property forceToolbar as %ZEN.Datatype.boolean [ InitialExpression = 0 ];
Prevent the user from changing the settings for show toolbar.
• property hasInitialFilters as %ZEN.Datatype.boolean(XMLPROJECTION="NONE") [ InitialExpression = 0 ];
If true, then there are filter values that have to be applied.
• property isClosed as %ZEN.Datatype.boolean [ InitialExpression = 0 ];
isClosed stores the state of a widget
• property linkWidgetKey as %ZEN.Datatype.integer(XMLPROJECTION="NONE");
If this widget is linked, then this is the key of the widget we are linked to. Set when the page is created.
• property maximized as %ZEN.Datatype.boolean(XMLPROJECTION="NONE") [ InitialExpression = 0 ];
If true, then this widget should be maximized when it is initially displayed.
• property opacity as %ZEN.Datatype.float(XMLPROJECTION="NONE") [ InitialExpression = 1.0 ];
opacity of widget background
• property opacityToolbar as %ZEN.Datatype.float(XMLPROJECTION="NONE") [ InitialExpression = 1.0 ];
• property prevHomeCol as %ZEN.Datatype.integer;
homeCol value before a widget is dragged
• property prevHomeRow as %ZEN.Datatype.integer;
homeRow value before a widget is dragged
• property previewMode as %ZEN.Datatype.boolean [ InitialExpression = 0 ];
If true, then render in preview mode.
• property sessionCookie as %ZEN.Datatype.string;
Current CSP session.
• property settings as array of %ZEN.Datatype.string(XMLPROJECTION="NONE");
Settings applied to this widget. These are pulled from the URL of the dashboard viewer.
• property showSidebar as %ZEN.Datatype.boolean [ InitialExpression = 0 ];
Specify whether to display a sidebar.
• property showToolbar as %ZEN.Datatype.boolean [ InitialExpression = 1 ];
Specify whether to display a toolbar.
• property showToolbarBottomBorder as %ZEN.Datatype.boolean [ InitialExpression = 1 ];
Specify whether to display the separator between the toolbar and widget content
• property showToolbarOnlyWhenMaximized as %ZEN.Datatype.boolean(XMLPROJECTION="attribute") [ InitialExpression = 0 ];
Specify whether to display a toolbar.
• property sidebarContent as %ZEN.Datatype.html;
HTML content of sidebar.
• property sidebarWidth as %ZEN.Datatype.length [ InitialExpression = "25%" ];
Width of sidebar area.
• property subtype as %ZEN.Datatype.string;
Specify which specific sub-type of widget to display. The interpretation of this is up to subclasses to implement.
• property widgetKey as %ZEN.Datatype.integer;
Identifying key for the widget.
• property widgetLayout as %ZEN.Datatype.string;
A string containing the layout state for this widget: "key:top:left:width:height:max" This is used by "SaveSettings"

Methods

• method %AddFooter() as %Status
Add a footer to this widget.
• method %AddSidebar(pMainGroup) as %Status
Add a sidebar to the pMainGroup of this widget.
• method %DrawHTML()
Override dragGroup behavior.
• method %FindComponent(id As %String) as %ZEN.Component.component
Find a component within this widget with the given sub id.
• classmethod %GetCatalogInfo(Output pInfo As %List, Output pSubtypeList As %List) as %Status
Return information used to list this widget within the "widget catalog".
• method %GetDataController() as %ZEN.Auxiliary.abstractController
If this widget contains a data controller, return it.
• classmethod %GetWidgetPropertyInfo(pSubtype As %String, Output pInfo As %List) as %Status
Return information on additional "properties" supported by this widget for the given subtype.
• method %GetWidgetSettings(ByRef pSettings As %String) as %Status
Get array of "dashboard" settings for this widget.
• method %MakeWidgetId(pString As %String) as %String
Create an id value for an component within this widget.
• method %OnAddToPageBefore() as %Status
If implemented, this callback method is called at page render-time when this component is added to a page but before any of its children have been created.
• method %OnCreateControls(pGroup As %ZEN.Component.group) as %Status
This callback is called just before controls are added to the top of the widget. pGroup is the header in which new Zen control can be added.
• method %OnCreateWidget(pGroup As %ZEN.Component.group) as %Status
This callback is responsible for creating the contents of the widget. pGroup is the group to which new Zen components should be added.
• classmethod GetKpiFilterCaption(pKPIName, pSpec) as %String [ ZenMethod ]
Lookup a filter caption for a KPI
• method ResolveText(pEncodedText) as %String [ ZenMethod ]
Client-visible wrapper for the %ResolveText method to translate title text.
• method adjustContentSize(load, width, height) [ Language = javascript ]
Called when page is loaded (load will be true) or the widget is resized. This lets a subclass adjust the size of any components it has placed in the contents area. width and height contain the size of the content area.
• method adjustSizes(load) [ Language = javascript ]
Called when page is loaded or widget is resized.
• method closeWidget() [ Language = javascript ]
Hide a widget. Called in onclosepending callback of this widget.
• method controlEventHandler(which, action, targetProp, value, text) [ Language = javascript ]
This method is called when a control event is sent to this widget. A control event is raised by filter controls.
text is optional display value for value.
• method findComponent(id) [ Language = javascript ]
Find a component within this widget with the given sub id.
• method getDataController() [ Language = javascript ]
If this widget contains a data controller, return it. This allows for generic capabilities in this base class.
• method getDefinition(key) [ Language = javascript ]
Return the definition object for a given widget, if available. Use this widget by default.
• method getFilterTableForPrinting(parms) [ Language = javascript ]
Find the filters defined for the current widget and return them in a JSON table fit for consumption by the SVG printer.
• method getOverrideSkipList(type) [ Language = javascript ]
Return a list of items that should not be saved in override JSON arrays. The return is passed to componentToJSON.
• method getOverrides() [ Language = javascript ]
Return an array of current style overrides for this widget. Used to save to a theme.
• method getSVGFrame() [ Language = javascript ]
• method getSettingDisplayValue(setting, value) [ Language = javascript ]
• method getSettingLists(setting) [ Language = javascript ]
• method getSubtypeClass() [ Language = javascript ]
Return the actual type used for a widget subtype (such as "barChart").
• method hasOverrides() [ Language = javascript ]
Test if there are any style overrides for this widget.
• method initializeHomeRowCol() [ Language = javascript ]
Stores previous values of homeRow and homeCol (widget coordinates). Called in the onwindowgrab callback.
• method isMasterWidget(widgetId) [ Language = javascript ]
• method navCloseButtonClick(key) [ Language = javascript ]
Click on close button in navigator.
• method navDataArrange(key, swap, final) [ Language = javascript ]
Re-arrange of a list in navigator.
• method navDataChange(key, value, final) [ Language = javascript ]
Change of data value in navigator.
• method navHeaderButtonClick(key) [ Language = javascript ]
Click on header button in navigator.
• method navPopupAction(key, value) [ Language = javascript ]
Popup action in navigator.
• method navSelectItem(key, value, which) [ Language = javascript ]
Select of item in navigator.
• method onloadHandler() [ Language = javascript ]
This client event, if present, is fired when the page is loaded.
• method openWidget() [ Language = javascript ]
Open a closed widget. Called in an onclick callback in %ZEN.Component.navigator.
• method printSVGContent(svgFrameId, parms, svgContent, filename) [ Language = javascript ]
Print SVG content using the svgImageProvider. Parameters specific to the widget type may be passed in via the parms object, and those parameters will be augmented using settings common to all widgets in this clientMethod.
The target content may be looked up in the current svgFrameId, or printable content can be passed in directly as svgContent.
• method processAppMessage(value) [ Language = javascript ]
This is called by dragGroupManager when it is given 'processAppMessage' method
• method raiseEventHandler(action) [ Language = javascript ]
This method is called an event on this widget (such as click on a chart series) occurs and it needs to be dispatched.
• method resetOverrides(themeOnly, recreate) [ Language = javascript ]
Reset any style overrides for this widget.
• method resize(width, height) [ Language = javascript ]
Resize the active group to the given geometry.
• method selectWidget(evt) [ Language = javascript ]
Select this widget.
• method setModifiedIfDragged() [ Language = javascript ]
Sets the "Modified" flag when a widget is dragged. Called in the onwindowdrop callback.
• method setOpacity(opacity) [ Language = javascript ]
• method setProperty(property, value, value2) [ Language = javascript ]
Set the value of a named property.
• method setToolbarProperty(property, value) [ Language = javascript ]
• method showBreakdown(analysisClass) [ Language = javascript ]
Perform a showBreakdown action, if supported.
• method showDimensions() [ Language = javascript ]
Perform a showDimensions action, if supported.
• method showGeoListing(listing) [ Language = javascript ]
Perform a showGeoListing action, if supported.
• method showListing(listing) [ Language = javascript ]
Perform a showListing action, if supported.
• method updateMenuBar() [ Language = javascript ]
Dynamically update Open/Hidden lists in the menu bar when a widget is closed/reopened.


Copyright (c) 2025 by InterSystems Corporation. Cambridge, Massachusetts, U.S.A. All rights reserved. Confidential property of InterSystems Corporation.