Class JaxoBox

  • All Implemented Interfaces:
    java.awt.Shape, java.beans.PropertyChangeListener, java.io.Serializable, java.lang.Cloneable, java.util.EventListener, JaxoFillColorObject

    public class JaxoBox
    extends JaxoFillObject
    A box object.
    Since:
    2.0
    See Also:
    Serialized Form
    • Constructor Detail

      • JaxoBox

        public JaxoBox()
    • Method Detail

      • isCopy

        public final boolean isCopy​(JaxoObject comp)
        Determines if this JaxoObject is a copy of the specified one.
        Overrides:
        isCopy in class JaxoFillObject
        Parameters:
        comp - The JaxoObject to compare against.
        Returns:
        True if the JaxoObjects are identical.
      • getGrabbedHandle

        public final int getGrabbedHandle​(int clickX,
                                          int clickY,
                                          JaxoHandle h)
        Determines which handle the user has selected to move/resize/edit an object. This implementation also handles DX/DY.
        Overrides:
        getGrabbedHandle in class JaxoExtendedObject
        Parameters:
        clickX - The x coordinate where the mouse click has ocurred.
        clickY - The y coordinate where the mouse click has ocurred.
        h - A handle object.
        Returns:
        One of the static variables SELECT_* defined for this JaxoObject that specifies the handle which the user has clicked.
      • canBeSelected

        public boolean canBeSelected​(int handle,
                                     int mode)
        Determines if the object can be selected (moved, edited, etc) from the given point in a given edit mode.
        Overrides:
        canBeSelected in class JaxoExtendedObject
        Parameters:
        handle - One of the static variables SELECT_* defined for this JaxoObject.
        mode - The current edit mode.
        Returns:
        True if the object may be selected from the given point, false otherwise.
      • paintHandles

        public final void paintHandles​(JaxoGraphics2D g2,
                                       JaxoHandle h,
                                       int editMode)
        Paints the handles of this JaxoObject that allow to move/resize/edit it.
        Overrides:
        paintHandles in class JaxoExtendedObject
        Parameters:
        g2 - The corresponding graphics context.
        h - A handle object to be used for painting.
        editMode - The edit mode that the handles are being painted in.
      • smallestDistanceTo

        public final float smallestDistanceTo​(int px,
                                              int py)
        Determines the smallest distance of any of the handles of this JaxoObject from the given point.
        Overrides:
        smallestDistanceTo in class JaxoExtendedObject
        Parameters:
        px - The x coordinate of the test point.
        py - The y coordinate of the test point.
        Returns:
        The smallest distance.
      • paint

        public final void paint​(JaxoGraphics2D g2)
        The method that paints the JaxoObject.
        Specified by:
        paint in class JaxoObject
        Parameters:
        g2 - The graphics context where the object has to be painted.
      • getBounds

        public java.awt.Rectangle getBounds()
        Returns the bounding box of this object.
        Returns:
        the bounding box of this object.
      • latexCommand

        public final java.lang.String latexCommand​(float scale,
                                                   java.awt.Dimension canvasDim)
        The LaTeX command that is necessary to draw the given JaxoObject using the axodraw.sty package.
        Specified by:
        latexCommand in class JaxoObject
        Parameters:
        scale - A scale factor to translate Java coordinates to LaTeX coordinates.
        canvasDim - The current dimension of the canvas.
        Returns:
        The corresponding axodraw LaTeX command.
      • prepareEditPanel

        public void prepareEditPanel​(JaxoObjectEditPanel editPanel)
        Initializes the given editPanel to edit properties of this JaxoObject.
        Specified by:
        prepareEditPanel in class JaxoObject
        Parameters:
        editPanel - the panel to prepare.