javascriptraphaelgraphiti-js

How to make specific sides of rectangle to be resizable?


I want to make few or single side of rectangle to be resizable in Graphiti. If anybody has any idea then please help me.

Thanks in advance.


Solution

  • in the version 1.0.0 you can override the Figure.showResizeHandles method. See the HorizontalBus figure for an example

    /**
     * @method
     * Callback to update the visibility of the resize handles
     * 
     * @param {graphiti.Canvas} canvas
     * @param {graphiti.ResizeHandle} resizeHandle1 topLeft resize handle
     * @param {graphiti.ResizeHandle} resizeHandle2 topCenter resize handle
     * @param {graphiti.ResizeHandle} resizeHandle3 topRight resize handle
     * @param {graphiti.ResizeHandle} resizeHandle4 rightMiddle resize handle
     * @param {graphiti.ResizeHandle} resizeHandle5 bottomRight resize handle
     * @param {graphiti.ResizeHandle} resizeHandle6 bottomCenter resize handle
     * @param {graphiti.ResizeHandle} resizeHandle7 bottomLeft resize handle
     * @param {graphiti.ResizeHandle} resizeHandle8 leftMiddle resize handle
     * @template
     */
     showResizeHandles: function(canvas, resizeHandle1, resizeHandle2, resizeHandle3, resizeHandle4, resizeHandle5, resizeHandle6, resizeHandle7, resizeHandle8)
     {
        resizeHandle4.setDimension(resizeHandle4.getWidth(), this.getHeight());
        resizeHandle8.setDimension(resizeHandle4.getWidth(), this.getHeight());
    
        this._super(canvas, resizeHandle1, resizeHandle2, resizeHandle3, resizeHandle4, resizeHandle5, resizeHandle6, resizeHandle7, resizeHandle8);
    
        resizeHandle1.hide();
        resizeHandle2.hide();
        resizeHandle3.hide();
        resizeHandle5.hide();
        resizeHandle6.hide();
        resizeHandle7.hide();
     },
    

    This creates two resize handles on the right and left with the full height of the parent figure.

    Release 1.0.0 will be released at Sept. 17th