Home > Class Reference > ENSLIB namespace > %ZEN.Component.dragGroup
Private  Storage   

%ZEN.Component.dragGroup


class %ZEN.Component.dragGroup extends group

A specialized type of group that can be placed within a desktop group. A drag group displays a header (which can include various buttons). The user can drag the group around within its containing desktop group.

Inventory


Parameters Properties Methods Queries Indices ForeignKeys Triggers
10 33 63


Summary


Properties
%condition %import %includeFiles %page
%resource align aux cellAlign
cellSize cellStyle cellVAlign centerHeader
children colSpan composite containerStyle
disabled dragEnabled dropEnabled enclosingClass
enclosingStyle error groupClass groupStyle
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 label labelClass
labelDisabledClass labelPosition labelStyle layout
minWidth moveEnabled name onafterdrag
onbeforedrag onclick onclosepending ondrag
ondrop onhide onrefresh onresize
onshow onupdate onwindowdrop onwindowgrab
parent resizeEnabled rowSpan showLabel
slice title tuple valign
visible width window

Methods
%AddChild %AddChildAfter %AddChildBefore %AddToSaveSet
%Attr %BindExport %ClassIsLatestVersion %ClassName
%ConstructClone %DispatchClassMethod %DispatchGetModified %DispatchGetProperty
%DispatchMethod %DispatchSetModified %DispatchSetMultidimProperty %DispatchSetProperty
%DrawComponentHTML %DrawHTML %DrawJSStrings %EnclosingDivId
%Eval %EvalC %Extends %ForceClientRender
%GetChildIndex %GetEventHandlers %GetParameter %GetXMLName
%IsA %IsModified %MakeId %New
%NormalizeObject %ObjectModified %OnAddToPageAfter %OnAddToPageBefore
%OnDrawEnclosingDiv %OnDrawObjectProperties %OnMutateChildren %OnObjectSynch
%OnZENDeserialize %OriginalNamespace %PackageName %QuoteValue
%QuoteValueL10N %RemoveChild %RemoveChildren %RemoveFromSaveSet
%Self %SerializeObject %SetModified %ValidateObject
XMLDTD XMLExport XMLExportToStream XMLExportToString
XMLNew XMLSchema XMLSchemaNamespace XMLSchemaType
abortClose addChild addChildAfter addChildBefore
adjustChildArea adjustHandleWidth adjustResizeBox animateIcon
applyCSSSettings childrenMutated close compress
constrainDragX constrainDragY disableCoverplate disableDrag
disableHeaderMaxToggle disableResize dragFinishHandler dragHandler
dragNotifyHandler dragStartHandler dropHandler dropStartHandler
enableCoverplate enableDrag enableHeaderMaxToggle enableResize
endDrag expand exposeComponent findElement
fireOnUpdateEvent getChildDiv getChildIndex getCoverplateDiv
getEnclosingDiv getHeaderDiv getHeaderUserDiv getHidden
getHintElement getLabelElement getProperty getSettings
getState getType getWindowHeight getWindowWidth
invokeSuper isCompressed isMaximized isOfType
isResizeInProgress makeId maximize normalize
onCreate onDelete onDisplayHandler onEndModalHandler
onGrabHandler onPopupAction onRefreshContents onReleaseHandler
onSerialize onStartModalHandler ondisabledHandler onloadHandler
onresizeHandler onunloadHandler onupdateHandler processAppMessage
refreshContents removeChild removeWindowChrome render
renderContents renderCoverplate renderHeader renderResize
renderSVG resetWindowChrome resize restoreGeometry
restoreState saveGeometry setAppLogo setBodyStyle
setCenterLayout setCloseIcon setContractIcon setExpandIcon
setHeaderLayout setHeaderStyle setHidden setIcon
setMaximizeIcon setMinimizeIcon setOverlayMode setProperty
setPropertyAll startDrag startProgressBar stopProgressBar
syncObject verifyHeaderGeometry

Subclasses
%DeepSee.Component.Widget.widget

Parameters


• parameter DEFAULTCLOSEIMAGE = "images/grayDragClose.png";
Default image for close group button.
• parameter DEFAULTCONTRACTIMAGE = "images/grayDragContract.png";
Default image for contract group button.
• parameter DEFAULTENCLOSINGCLASS = "dragGroup";
Subclasses can set this to change default css class for a group.
• parameter DEFAULTEXPANDIMAGE = "images/grayDragExpand.png";
Default image for expand group button.
• parameter DEFAULTHEADERLAYOUT = "ITFC";
Default header layout pattern
• parameter DEFAULTLAYOUT = "none";
Subclasses can set this to change default layout for a group.
• parameter DEFAULTMAXIMAGE = "images/grayDragMax.png";
Default image for maximize group button.
• parameter DEFAULTMINIMAGE = "images/grayDragMin.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.

Properties


• property centerHeader as %ZEN.Datatype.boolean [ InitialExpression = 0 ];
If set, this boolean flag indicates that the title section of the header should be centered over the dragGroup
• property colSpan as %ZEN.Datatype.integer [ InitialExpression = 1 ];
If used as a child of a snapGroup, this specifies the (initial static) width of the widget in columns
• property header as %ZEN.Datatype.caption [ InitialExpression = "Untitled Group" ];
Title to display in header section for this group.
• property headerLayout as %ZEN.Datatype.string [ InitialExpression = ..#DEFAULTHEADERLAYOUT ];
The header layout pattern determines the order in which control windows are added to the header section of the dragGroup window frame. This is encoded as a five character string consisting of the following tokens
'I' represents the Iconify button
'T' represents the Title section with both application logo and header caption
'F' represents the Full screen button
'C' represents the Close button
'U' represents the User content div (if desired)
This string allows one to restructure the location of the controls with a single call and might be useful if the page designer is trying to match the look and feel of a given operating system. For example, MS-Windows systems follow the pattern of 'TIFC' whereas MacOS adopts the standard of CIFT with the title centered (cf. centerHeader) The Title section represent something of a breakpoint in the header layout. Everything prior to the header floats from the left end of the header; Everything after the header, floats from the right end.
• property homeCol as %ZEN.Datatype.integer [ InitialExpression = 0 ];
If used as a child of a snapGroup, this specifies the (initial static) row hosting the left edge of the widget
• property homeRow as %ZEN.Datatype.integer [ InitialExpression = 0 ];
If used as a child of a snapGroup, this specifies the (initial static) row hosting the top of the widget
• property imageAppLogo as %ZEN.Datatype.uri;
URI of image to display for the close group button.
• property imageAppLogoWidth as %ZEN.Datatype.integer [ InitialExpression = 0 ];
Width (in pixels) of image to display for the close group button.
• property imageClose as %ZEN.Datatype.uri [ InitialExpression = ..#DEFAULTCLOSEIMAGE ];
URI of image to display for the close group button.
• property imageCloseHover as %ZEN.Datatype.uri;
URI of image to display for the close group button when mouse is present.
• property imageCloseWidth as %ZEN.Datatype.integer [ InitialExpression = 16 ];
Width (in pixels) of image to display for the close group button.
• property imageContract as %ZEN.Datatype.uri [ InitialExpression = ..#DEFAULTCONTRACTIMAGE ];
URI of image to display for the contract group button.
• property imageContractHover as %ZEN.Datatype.uri;
URI of image to display for the contract group button when mouse is present.
• property imageContractWidth as %ZEN.Datatype.integer [ InitialExpression = 16 ];
Width (in pixels) of image to display for the contract group button.
• property imageExpand as %ZEN.Datatype.uri [ InitialExpression = ..#DEFAULTEXPANDIMAGE ];
URI of image to display for the expand group button.
• property imageExpandHover as %ZEN.Datatype.uri;
URI of image to display for the expand group button when mouse is present.
• property imageExpandWidth as %ZEN.Datatype.integer [ InitialExpression = 16 ];
Width (in pixels) of image to display for the expand group button.
• property imageMaximize as %ZEN.Datatype.uri [ InitialExpression = ..#DEFAULTMAXIMAGE ];
URI of image to display for the maximize group button.
• property imageMaximizeHover as %ZEN.Datatype.uri;
URI of image to display for the maximize group button when mouse is present.
• property imageMaximizeWidth as %ZEN.Datatype.integer [ InitialExpression = 16 ];
Width (in pixels) of image to display for the maximize group button.
• property imageMinimize as %ZEN.Datatype.uri [ InitialExpression = ..#DEFAULTMINIMAGE ];
URI of image to display for the minimize group button.
• property imageMinimizeHover as %ZEN.Datatype.uri;
URI of image to display for the minimize group button when mouse is present
• property imageMinimizeWidth as %ZEN.Datatype.integer [ InitialExpression = 16 ];
Width (in pixels) of image to display for the minimize group button.
• property imageResize as %ZEN.Datatype.uri [ InitialExpression = ..#DEFAULTRESIZEIMAGE ];
URI of image to display for the minimize group button.
• property imageResizeSize as %ZEN.Datatype.integer [ InitialExpression = ..#DEFAULTRESIZEICONSIZE ];
Square area in pixels for the resize icon
• property minWidth as %ZEN.Datatype.integer [ InitialExpression = 96 ];
This sets the minimum width (in pixels) for a dragGroup during resizing. If used within a snapGrid context, the actual minimum width is set to the next highest even multiple of the snapGrid column width.
• property moveEnabled as %ZEN.Datatype.boolean [ InitialExpression = 1 ];
If set, the default, this boolean flag allows the drag group to be repositioned by user action within the containing active group area.
• property onclosepending as %ZEN.Datatype.eventHandler;
onclosepending event handler: This event is fired when the close button of this drag group is pressed. Unlike native browser windows, it is possible to prevent the window closure by calling abortClose() in response to this event.
• property onresize as %ZEN.Datatype.eventHandler;
onresize event handler: This event is fired when this drag group is resized.
• property onwindowdrop as %ZEN.Datatype.eventHandler;
onwindowdrop event handler: This event is fired when this drag group's title bar is released after a reloaction gesture
• property onwindowgrab as %ZEN.Datatype.eventHandler;
onwindowgrab event handler: This event is fired when this drag group is grabbed by the titlebar for relocation.
• property resizeEnabled as %ZEN.Datatype.boolean [ InitialExpression = 1 ];
If set, the default, this boolean flag allows the drag group to be resized by user action
• property rowSpan as %ZEN.Datatype.integer [ InitialExpression = 1 ];
If used as a child of a snapGroup, this specifies the (initial static) height of the widget in rows

Methods


• method %DrawHTML()
Static HTML display method: draw the BODY of this component as HTML.
Subclasses implement this in order to render the static HTML contents of a component.
• method abortClose() [ Language = javascript ]
Public utility to abort the a window closure in progress
• method adjustChildArea() [ Language = javascript ]
Utility to adjust the size of the dragChildren area in the event of a resize action
• method adjustHandleWidth() [ Language = javascript ]
Utility to adjust the width of the drag header to correctly position the header controls based on the current drag group width
• method adjustResizeBox() [ Language = javascript ]
Utility to adjust the location of the resize box to correctly position the control based on the current drag group width
• method animateIcon(who, which) [ Language = javascript ]
• method applyCSSSettings(div, value) [ Language = javascript ]
• method close(event) [ Language = javascript ]
Callback to close the subwindow
• method compress(event) [ Language = javascript ]
Callback to reduce subwindow to the height of its title bar
• method constrainDragX(engine, wrapper, intendedX) [ Language = javascript ]
Callback to limit horizontal resizing
• method constrainDragY(engine, wrapper, intendedY) [ Language = javascript ]
Callback to limit vertical resizing
• method disableCoverplate() [ Language = javascript ]
• method disableDrag() [ Language = javascript ]
Disable user drag events for this group
• method disableHeaderMaxToggle() [ Language = javascript ]
Reset the maximize toggle mode set up by enableHeaderMaxToggle
• method disableResize() [ Language = javascript ]
Disable user resize events for this group
• method enableCoverplate() [ Language = javascript ]
• method enableDrag() [ Language = javascript ]
Enable user drag events for this group
• method enableHeaderMaxToggle() [ Language = javascript ]
When rendering static windows, enable a click anywhere on the header handle to toggle full screen mode instead of allowing drag operations
• method enableResize() [ Language = javascript ]
Enable user resize events for this group
• method endDrag(engine, wrapper) [ Language = javascript ]
Callback to wrap up window resize event
• method expand(event) [ Language = javascript ]
Callback to restore a compressed pane to it miniture display mode
• method getChildDiv() [ Language = javascript ]
Return the HTML div element that wraps the children of this group.
• method getCoverplateDiv() [ Language = javascript ]
Return the HTML div element needed as a cover plate for event management under certain versions of IE
• method getHeaderDiv() [ Language = javascript ]
Return the HTML div element that wraps the header of this group.
• method getHeaderUserDiv() [ Language = javascript ]
Return the HTML div element reserver for user content in the header of this group.
• method getState() [ Language = javascript ]
Return a string that captures the current state of the group's layout
• method getWindowHeight() [ Language = javascript ]
Return the internal height of the drag window in pixles
• method getWindowWidth() [ Language = javascript ]
Return the internal width of the drag window in pixles
• method isCompressed() [ Language = javascript ]
Returns true if the drag window is currently rendered in header only mode
• method isMaximized() [ Language = javascript ]
Returns true if the drag window is currently rendered in maximized mode
• method isResizeInProgress() [ Language = javascript ]
Checks to see if the user is actively in the process of resizing the window
• method maximize(event) [ Language = javascript ]
Callback to switch subwindow into full screen mode
• method normalize(event) [ Language = javascript ]
Callback to switch a full screen window back down to it previous (iconified or mini-window) mode
• method onGrabHandler() [ Language = javascript ]
Launches a callback (if defined) when the drag group is grabbed by the title bar for the purpose of relocation
• method onRefreshContents() [ Language = javascript ]
Client-side method to ensure that the controller has an accurate model to work with even if the DOM has been modified externally
• method onReleaseHandler() [ Language = javascript ]
Launches a callback (if defined) when the drag group's title bar is released after relocation gesture
• method onresizeHandler() [ Language = javascript ]
• method processAppMessage(value) [ Language = javascript ]
Generic method to receive client "broadcast" messages. Subclasses can override this to extend the broadcast functionality.
• method removeWindowChrome() [ Language = javascript ]
Remove the header entirely and disable resize
• method renderContents() [ Language = javascript ]
Client-side method to render control.
• method renderCoverplate() [ Language = javascript ]
• method renderHeader() [ Language = javascript ]
Render the contents of the header section of this component.
• method renderResize() [ Language = javascript ]
Add resize box for this component.
• method resetWindowChrome() [ Language = javascript ]
Restore header and resize controls previously remove by removeWindowChrome
• method resize(width, height) [ Language = javascript ]
Resize the active group to the given geometry
• method restoreGeometry() [ Language = javascript ]
Restore key layout information about group in after a radical presentation change
• method restoreState(str) [ Language = javascript ]
Given a previously encoded layout string, restore a group to its previous state
• method saveGeometry() [ Language = javascript ]
Save key layout information about group in anticipation of a radical presentation change
• method setAppLogo(iconURL, width) [ Language = javascript ]
• method setBodyStyle(value) [ Language = javascript ]
Set the CSS styles of the header section of the element The value passed may take one of three forms: It can be a CSS Snippet in a string "background-color:#0000ff;font-weight:bold;" It can be a JSON string abiding by JavaScript's CSS conventions "{'backgroundColor':'#0000ff', 'fontWeight':'bold' }" Or it can be an actual javascript object {backgroundColor:'#0000ff', fontWeight:'bold'}
• method setCenterLayout(flag) [ Language = javascript ]
• method setCloseIcon(iconURL, width) [ Language = javascript ]
• method setContractIcon(iconURL, width) [ Language = javascript ]
• method setExpandIcon(iconURL, width) [ Language = javascript ]
• method setHeaderLayout(layout) [ Language = javascript ]
• method setHeaderStyle(value) [ Language = javascript ]
Set the CSS styles of the header section of the element. The value passed may take one of three forms: It can be a CSS Snippet in a string "background-color:#0000ff;font-weight:bold;" It can be a JSON string abiding by JavaScript's CSS conventions "{'backgroundColor':'#0000ff', 'fontWeight':'bold' }" Or it can be an actual javascript object {backgroundColor:'#0000ff', fontWeight:'bold'}
• method setIcon(iconDiv, iconURL, width) [ Language = javascript ]
• method setMaximizeIcon(iconURL, width) [ Language = javascript ]
• method setMinimizeIcon(iconURL, width) [ Language = javascript ]
• method setProperty(property, value, value2) [ Language = javascript ]
Set the value of a named property.
• method startDrag(engine, wrapper) [ Language = javascript ]
Callback to initiate window resize event
• method syncObject() [ Language = javascript ]
If the object has been moved or resized inside a snapGrid, sync the server-side visible geometry properties with the actual location and extents
• method verifyHeaderGeometry() [ Language = javascript ]