Class VFSDirectoryEntryTable.ColumnDragHook

java.lang.Object
org.gjt.sp.jedit.browser.VFSDirectoryEntryTable.ColumnDragHook
All Implemented Interfaces:
MouseListener, MouseMotionListener, EventListener, MouseInputListener
Enclosing class:
VFSDirectoryEntryTable

public static class VFSDirectoryEntryTable.ColumnDragHook extends Object implements MouseInputListener
Original code: https://stackoverflow.com/questions/1155137/how-to-keep-a-single-column-from-being-reordered-in-a-jtable/14480948 A delegating MouseInputListener to be installed instead of the one registered by the ui-delegate. It's implemented to prevent dragging the first column or any other column over the first.
  • Constructor Details

    • ColumnDragHook

      public ColumnDragHook(JTableHeader header)
  • Method Details

    • mousePressed

      public void mousePressed(MouseEvent e)
      Implemented to do some tweaks/bookkeeping before/after passing the event to the original - temporarily disallow reordering if hit on first column - calculate the max mouseX that's allowable in dragging to the left
      Specified by:
      mousePressed in interface MouseListener
    • mouseDragged

      public void mouseDragged(MouseEvent e)
      Implemented to pass the event to the original only if the mouseX doesn't lead to dragging the column over the first.
      Specified by:
      mouseDragged in interface MouseMotionListener
    • mouseReleased

      public void mouseReleased(MouseEvent e)
      Specified by:
      mouseReleased in interface MouseListener
    • mouseClicked

      public void mouseClicked(MouseEvent e)
      Specified by:
      mouseClicked in interface MouseListener
    • mouseEntered

      public void mouseEntered(MouseEvent e)
      Specified by:
      mouseEntered in interface MouseListener
    • mouseExited

      public void mouseExited(MouseEvent e)
      Specified by:
      mouseExited in interface MouseListener
    • mouseMoved

      public void mouseMoved(MouseEvent e)
      Specified by:
      mouseMoved in interface MouseMotionListener
    • installHook

      protected void installHook()
    • installMouseMotionHook

      protected void installMouseMotionHook()
    • installMouseHook

      protected void installMouseHook()
    • uninstallHook

      public void uninstallHook()
    • uninstallMouseMotionHook

      protected void uninstallMouseMotionHook()
    • uninstallMouseHook

      protected void uninstallMouseHook()