# Package ur_rna.StructureEditor.services

- Interface Summary
  Interface | Description
  --- | ---
  SceneColorizer.ColorMode |
  SceneColorizer.DoubleComparer |
  SceneController | Abstract some things away from RnaDrawController
  SceneRenderer |

- Class Summary
  Class | Description
  --- | ---
  History<T> | Stores the history of an arbitrary model for undo/redo
  RecentFileList | List of recent files that prevents duplicate paths.
  RecentFileList.RecentFile |
  RecentFileMenuManager | Handles recent file menu.
  RnaDrawController | The controller that interprets input from the screens, modifies the RNAscene, keeps a history of changes, and reports updates to subscribed listeners.
  RnaDrawController.Colors |
  RnaDrawController.NucGroup |
  RnaDrawController.ScreenNuc |
  SceneColorizer | Applies color to nucleobases in a scene.
  SceneColorizer.NumberRangeList |
  SceneColorizer.PairProbabilityData |
  SceneController.DragOpts | flags passed to DrawHandle and dragNuc methods to indicate that the user is modifying the default behavior.
  SceneUpdateEvent | Event that indicates an update has occurred in the specified RnaScene.
  UserPrefs | Assists with storing User Preferences to file.

- Enum Summary
  Enum | Description
  --- | ---
  RnaDrawController.BehaviorMode | BehaviorMode defines two separate "behavior modes" that combine selection behavior along with draw-handle and dragging behaviors.
  RnaDrawController.SelectionType |
  SceneColorizer.Comparison |
  SceneDrawMode | Represents different modes of drawing a Scene
  SceneUpdateCategory | Various types of changes that can occur to a Scene as a result of user interaction.