org.vishia.gral.base

## Interface GralMouseWidgetAction_ifc

- All Known Implementing Classes:
    GralButton.MouseActionButton, GralCurveView.GralCurveViewMouseAction

      public interface GralMouseWidgetAction_ifc

  This interface is implemented in the Widget adaption for the Gral level. It should not be known by the user, except the user creates new widget types. The interface is the connection from Mouse listeners in the graphic implementation layer (swt, swing) to the gral widgets. See `SwtGralMouseListener` for an usage in graphic implementation layer.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `mUser1down` Bit mask to determine which mouse action should invoke the `GralWidget#getActionChange()`.
    `static int` | `mUser1up` Bit mask to determine which mouse action should invoke the `GralWidget#getActionChange()`.
    `static int` | `mUser2down` Bit mask to determine which mouse action should invoke the `GralWidget#getActionChange()`.
    `static int` | `mUser2up` Bit mask to determine which mouse action should invoke the `GralWidget#getActionChange()`.
    `static int` | `mUser3down` Bit mask to determine which mouse action should invoke the `GralWidget#getActionChange()`.
    `static int` | `mUser3up` Bit mask to determine which mouse action should invoke the `GralWidget#getActionChange()`.
    `static int` | `mUserAll` Bit mask to determine which mouse action should invoke the `GralWidget#getActionChange()`.
    `static int` | `mUserAlldown` Bit mask to determine which mouse action should invoke the `GralWidget#getActionChange()`.
    `static int` | `mUserAllup` Bit mask to determine which mouse action should invoke the `GralWidget#getActionChange()`.
    `static int` | `mUserDouble` Bit mask to determine which mouse action should invoke the `GralWidget#getActionChange()`.
    `static int` | `version` Version, history and licence 2013-10-13 Hartmut new: `mouse1Double(int, int, int, int, int, GralWidget)`.

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `mouse1Double(int key, int xMousePixel, int yMousePixel, int xWidgetSizePixel, int yWidgetSizePixel, GralWidget widgg)`
    `void` | `mouse1Down(int key, int xMousePixel, int yMousePixel, int xWidgetSizePixel, int yWidgetSizePixel, GralWidget widgg)` Called from the graphic implementation layer if the standard left mouse button is pressed.
    `void` | `mouse1Up(int key, int xMousePixel, int yMousePixel, int xWidgetSizePixel, int yWidgetSizePixel, GralWidget widgg)`
    `void` | `mouse2Down(int key, int xMousePixel, int yMousePixel, int xWidgetSizePixel, int yWidgetSizePixel, GralWidget widgg)` Called from the graphic implementation layer if the standard right mouse button is pressed.
    `void` | `mouse2Up(int key, int xMousePixel, int yMousePixel, int xWidgetSizePixel, int yWidgetSizePixel, GralWidget widgg)`
    `boolean` | `mouseMoved(int xMousePixel, int yMousePixel, int xWidgetSizePixel, int yWidgetSizePixel)` This routine is called only if a mouse button is pressed while moving the mouse cursor.

- - ### Field Detail

    - #### version

          static final int version

      Version, history and licence
      - 2013-10-13 Hartmut new: `mouse1Double(int, int, int, int, int, GralWidget)`. #new
      - 2013-05-13 Hartmut chg: All methods changed, parameter key, position.
      Copyright/Copyleft: For this source the LGPL Lesser General Public License, published by the Free Software Foundation is valid. It means:
      1. You can use this source without any restriction for any desired purpose.
      2. You can redistribute copies of this source to everybody.
      3. Every user of this source, also the user of redistribute copies with or without payment, must accept this license for further using.
      4. But the LPGL ist not appropriate for a whole software product, if this source is only a part of them. It means, the user must publish this part of source, but don't need to publish the whole source of the own product.
      5. You can study and modify (improve) this source for own using or for redistribution, but you have to license the modified sources likewise under this LGPL Lesser General Public License. You mustn't delete this Copyright/Copyleft inscription in this source file.
      If you are indent to use this sources without publishing its usage, you can get a second license subscribing a special contract with the author.
      See Also:
        Constant Field Values

    - #### mUser1down

          static final int mUser1down

      Bit mask to determine which mouse action should invoke the `GralWidget#getActionChange()`. It is the second parameter of `GralWidget.setActionMouse(GralMouseWidgetAction_ifc, int)`. Use an | of this conditions. mUserAll includes any key of mouse.
      See Also:
        Constant Field Values

    - #### mUser2down

          static final int mUser2down

      Bit mask to determine which mouse action should invoke the `GralWidget#getActionChange()`. It is the second parameter of `GralWidget.setActionMouse(GralMouseWidgetAction_ifc, int)`. Use an | of this conditions. mUserAll includes any key of mouse.
      See Also:
        Constant Field Values

    - #### mUser3down

          static final int mUser3down

      Bit mask to determine which mouse action should invoke the `GralWidget#getActionChange()`. It is the second parameter of `GralWidget.setActionMouse(GralMouseWidgetAction_ifc, int)`. Use an | of this conditions. mUserAll includes any key of mouse.
      See Also:
        Constant Field Values

    - #### mUserAlldown

          static final int mUserAlldown

      Bit mask to determine which mouse action should invoke the `GralWidget#getActionChange()`. It is the second parameter of `GralWidget.setActionMouse(GralMouseWidgetAction_ifc, int)`. Use an | of this conditions. mUserAll includes any key of mouse.
      See Also:
        Constant Field Values

    - #### mUser1up

          static final int mUser1up

      Bit mask to determine which mouse action should invoke the `GralWidget#getActionChange()`. It is the second parameter of `GralWidget.setActionMouse(GralMouseWidgetAction_ifc, int)`. Use an | of this conditions. mUserAll includes any key of mouse.
      See Also:
        Constant Field Values

    - #### mUser2up

          static final int mUser2up

      Bit mask to determine which mouse action should invoke the `GralWidget#getActionChange()`. It is the second parameter of `GralWidget.setActionMouse(GralMouseWidgetAction_ifc, int)`. Use an | of this conditions. mUserAll includes any key of mouse.
      See Also:
        Constant Field Values

    - #### mUser3up

          static final int mUser3up

      Bit mask to determine which mouse action should invoke the `GralWidget#getActionChange()`. It is the second parameter of `GralWidget.setActionMouse(GralMouseWidgetAction_ifc, int)`. Use an | of this conditions. mUserAll includes any key of mouse.
      See Also:
        Constant Field Values

    - #### mUserAllup

          static final int mUserAllup

      Bit mask to determine which mouse action should invoke the `GralWidget#getActionChange()`. It is the second parameter of `GralWidget.setActionMouse(GralMouseWidgetAction_ifc, int)`. Use an | of this conditions. mUserAll includes any key of mouse.
      See Also:
        Constant Field Values

    - #### mUserDouble

          static final int mUserDouble

      Bit mask to determine which mouse action should invoke the `GralWidget#getActionChange()`. It is the second parameter of `GralWidget.setActionMouse(GralMouseWidgetAction_ifc, int)`. Use an | of this conditions. mUserAll includes any key of mouse.
      See Also:
        Constant Field Values

    - #### mUserAll

          static final int mUserAll

      Bit mask to determine which mouse action should invoke the `GralWidget#getActionChange()`. It is the second parameter of `GralWidget.setActionMouse(GralMouseWidgetAction_ifc, int)`. Use an | of this conditions. mUserAll includes any key of mouse.
      See Also:
        Constant Field Values

  - ### Method Detail

    - #### mouse1Down

          void mouse1Down(int key,
                          int xMousePixel,
                          int yMousePixel,
                          int xWidgetSizePixel,
                          int yWidgetSizePixel,
                          GralWidget widgg)

      Called from the graphic implementation layer if the standard left mouse button is pressed.
      Parameters:
        `xMousePixel` -
        `yMousePixel` -

    - #### mouse1Up

          void mouse1Up(int key,
                        int xMousePixel,
                        int yMousePixel,
                        int xWidgetSizePixel,
                        int yWidgetSizePixel,
                        GralWidget widgg)

    - #### mouse2Down

          void mouse2Down(int key,
                          int xMousePixel,
                          int yMousePixel,
                          int xWidgetSizePixel,
                          int yWidgetSizePixel,
                          GralWidget widgg)

      Called from the graphic implementation layer if the standard right mouse button is pressed.
      Parameters:
        `xMousePixel` -
        `yMousePixel` -

    - #### mouse2Up

          void mouse2Up(int key,
                        int xMousePixel,
                        int yMousePixel,
                        int xWidgetSizePixel,
                        int yWidgetSizePixel,
                        GralWidget widgg)

    - #### mouse1Double

          void mouse1Double(int key,
                            int xMousePixel,
                            int yMousePixel,
                            int xWidgetSizePixel,
                            int yWidgetSizePixel,
                            GralWidget widgg)

    - #### mouseMoved

          boolean mouseMoved(int xMousePixel,
                             int yMousePixel,
                             int xWidgetSizePixel,
                             int yWidgetSizePixel)

      This routine is called only if a mouse button is pressed while moving the mouse cursor.
      Parameters:
        `xMousePixel` - The current mouse cursor x value
        `yMousePixel` - The current mouse cursor y value
        `xWidgetSizePixel` - Width of the associated widget.
        `yWidgetSizePixel` - Height of the associated widget.
      Returns:
        true if the mouse should be still accepted as pressed, false if the mouse button up action should be prevented. The mouse is not accepted as pressed any more.