ur_rna.Utilities.swing

## Interface IMergeItem

- All Superinterfaces:
    java.lang.Cloneable
  All Known Implementing Classes:
    AnnotationMenu, CheckMergeItem, ConstraintsMenu, DotsMenu, DrawingEditMenu, DrawingFileMenu, DrawingFormatMenu, DrawingViewMenu, FileMenu, FileMenu, HelpMenu, ImageDialog.PrintMenu, IMergeItem.Proxy, MainMenu, MainMenu, MergeButton, MergeButton.Separator, MergeItem, MergeItem.Separator, MergeMenu, MergeToggleButton, NucleicAcidMenu, OligoWalkWindow.OligoWalkResultsMenu, PlotMenu, PredictMenu, SequenceDisplayWindow.EditMenu, SequenceDisplayWindow.SpeakMenu, SettingsMenu, StructureMenu, WindowsMenu, WindowsMenu.WindowItem

      public interface IMergeItem
      extends java.lang.Cloneable

  Provides an interface for a UI component that be included in a hierarchical list. In addition, items can be ordered, grouped and merged (i.e. items from two parents with the same name are combined).

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface and Description
    --- | ---
    `static class` | `IMergeItem.Proxy`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `MergePosDefault` The default merge position for NON-merging items or merge items that have never been positioned.
    `static int` | `MergePosInitial` The merge position for newly created items.
    `static int` | `MergePosInvalid` Indicates an invalid merge position.
    `static int` | `MergePosMax` The maximum allowed merge position.
    `static int` | `MergePosMin` The minimum allowed merge position.

  - ### Method Summary

    All Methods Static Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `static IMergeItem` | `asMergeItem(java.awt.Component c)`
    `static java.util.List<IMergeItem>` | `asMergeItems(java.util.Collection<? extends java.awt.Component> items)`
    `static int` | `compareByMergePos(java.awt.Component c1, java.awt.Component c2)`
    `static int` | `compareByMergePos(IMergeItem c1, IMergeItem c2)`
    `static int` | `fixInvalid(int pos)`
    `java.awt.Component` | `getComponent()`
    `default java.lang.String` | `getMergeName()`
    `static java.lang.String` | `getMergeName(java.awt.Component c)`
    `int` | `getMergePos()`
    `static int` | `getMergePos(java.awt.Component c)`
    `static int` | `getValidMergePos(java.awt.Component c)`
    `default void` | `mergeEnd()`
    `default void` | `mergeStart()`
    `static int` | `setInitialMergePos(IMergeItem mi, int newPos)`
    `static int` | `setMergePos(IMergeItem mi, int newPos)`
    `IMergeItem` | `setMergePos(int value)`

- - ### Field Detail

    - #### MergePosDefault

          static final int MergePosDefault

      The default merge position for NON-merging items or merge items that have never been positioned.
      See Also:
        Constant Field Values

    - #### MergePosInitial

          static final int MergePosInitial

      The merge position for newly created items. This distinguishes items that have never been positioned from those set to e.g. 0.
      See Also:
        Constant Field Values

    - #### MergePosInvalid

          static final int MergePosInvalid

      Indicates an invalid merge position. If a MergeMenu's subItemIndex is set to this value, it will NOT modify the mergePositions of child items added to it.
      See Also:
        Constant Field Values

    - #### MergePosMax

          static final int MergePosMax

      The maximum allowed merge position. Values above than this are reserved.
      See Also:
        Constant Field Values

    - #### MergePosMin

          static final int MergePosMin

      The minimum allowed merge position. Values lower than this are reserved.
      See Also:
        Constant Field Values

  - ### Method Detail

    - #### asMergeItem

          static IMergeItem asMergeItem(java.awt.Component c)

    - #### asMergeItems

          static java.util.List<IMergeItem> asMergeItems(java.util.Collection<? extends java.awt.Component> items)

    - #### compareByMergePos

          static int compareByMergePos(java.awt.Component c1,
                                       java.awt.Component c2)

    - #### compareByMergePos

          static int compareByMergePos(IMergeItem c1,
                                       IMergeItem c2)

    - #### fixInvalid

          static int fixInvalid(int pos)

    - #### getComponent

          java.awt.Component getComponent()

    - #### getMergeName

          default java.lang.String getMergeName()

    - #### getMergeName

          @NotNull
          static java.lang.String getMergeName(java.awt.Component c)

    - #### getMergePos

          int getMergePos()

    - #### getMergePos

          static int getMergePos(java.awt.Component c)

    - #### getValidMergePos

          static int getValidMergePos(java.awt.Component c)

    - #### mergeEnd

          default void mergeEnd()

    - #### mergeStart

          default void mergeStart()

    - #### setInitialMergePos

          static int setInitialMergePos(IMergeItem mi,
                                        int newPos)

    - #### setMergePos

          static int setMergePos(IMergeItem mi,
                                 int newPos)

    - #### setMergePos

          IMergeItem setMergePos(int value)