RFramePainter

RFramePainter

(private) new RFramePainter(dom, frame)

Painter class for RFrame, main handler for interactivity

Source:
Parameters:
Name Type Description
dom object | string

DOM element for drawing or element id

frame object

RFrame object

Methods

_setAxisRange()

Set axis range

Source:

(private) addInteractivity()

Add interactive functionality to the frame

Source:

(private) addKeysHandler()

Add interactive keys handlers

Source:

axisAsText()

Converts 'raw' axis value into text

Source:

changeFrameAttr()

Set grid drawing for specified axis

Source:

(private) cleanFrameDrawings()

Removes all drawn elements of the frame

Source:

(private) cleanXY()

Remove all x/y functions

Source:

(private) cleanup()

Fully cleanup frame

Source:

(private) cleanupAxes()

Remove all axes drawings

Source:

configureUserClickHandler()

Configure user-defined click handler

Description:
  • Function will be called every time when frame click was performed As argument, tooltip object with selected bins will be provided If handler function returns true, default handling of click will be disabled

Source:

configureUserDblclickHandler()

Configure user-defined dblclick handler

Description:
  • Function will be called every time when double click was called As argument, tooltip object with selected bins will be provided If handler function returns true, default handling of dblclick (unzoom) will be disabled

Source:

(private) createFrameG()

Create frame element and update all attributes

Source:

(private) createXY()

Create x,y objects which maps user coordinates into pixels

Description:
  • Must be used only for v6 objects, see TFramePainter for more details

Source:

(async) drawAxes()

Draw configured axes on the frame

Description:
  • axes can be drawn only for main histogram

Source:

drawAxes2()

Draw secondary configured axes

Source:

drawGrids()

Draw axes grids

Description:
  • Called immediately after axes drawing

Source:

fillContextMenu()

Fill context menu

Source:

fillObjectOfflineMenu()

Fill menu for frame when server is not there

Source:

getFrameHeight()

Returns frame height

Source:

getFramePainter()

Returns frame painter - object itself

Source:

getFrameRect()

Returns frame rectangle plus extra info for hint display

Source:

getFrameWidth()

Returns frame width

Source:

getFrameX()

Returns frame X position

Source:

getFrameY()

Returns frame Y position

Source:

(private) getGrFuncs()

Return functions to create x/y points based on coordinates

Description:
  • In default case returns frame painter itself

Source:

getHistPalette()

Returns palette associated with frame

Source:

getProjectionFunc()

Returns coordinates transformation func

Source:

hasDrawnAxes()

Identify if requested axes are drawn

Description:
  • Checks if x/y axes are drawn. Also if second side is already there

Source:

isAxisZoomed()

Checks if specified axis zoomed

Source:

(private) is_root6()

Returns true if it is ROOT6 frame

Source:

recalculateRange()

Recalculate frame ranges using specified projection functions

Description:
  • Not yet used in v7

Source:

(private) redraw()

Redraw frame

Source:

(private) resetZoom()

Reset all zoom attributes

Source:

revertAxis()

Convert graphical coordinate into axis value

Source:

setAxes2Ranges()

Set secondary axes ranges

Source:

setAxesRanges()

Set axes ranges for drawing, check configured attributes if range already specified

Source:

(private) setFrameActive()

Set active flag for frame - can block some events

Source:

(private) setRootPadRange()

Set selected range back to pad object - to be implemented

Source:

(private) showAxisStatus()

Show axis status message

Description:
  • method called normally when mouse enter main object element

Source:

(private) sizeChanged()

function called at the end of resize of frame

Description:
  • Used to update attributes on the server

Source:

toggleAxisLog()

Toggle log scale on the specified axes

Source:

(async) unzoom() → {Promise}

Unzoom specified axes

Source:
Returns:

with boolean flag if zoom is changed

Type
Promise

(async) unzoomSingle()

Unzoom single axis

Source:

updateAttributes()

Update graphical attributes

Source:

(async) zoom() → {Promise}

function can be used for zooming into specified range

Description:
  • if both limits for each axis 0 (like xmin === xmax === 0), axis will be unzoomed

Source:
Returns:

with boolean flag if zoom operation was performed

Type
Promise

(private) zoomChangedInteractive()

Mark/check if zoom for specific axis was changed interactively

Source:

(async, protected) zoomSingle(name, vmin, vmax, interactiveopt)

Zooming of single axis

Source:
Parameters:
Name Type Attributes Description
name String

axis name like x/y/z but also second axis x2 or y2

vmin Number

axis minimal value, 0 for unzoom

vmax Number

axis maximal value, 0 for unzoom

interactive Boolean <optional>

if change was performed interactively