ui.view

## Class GUI<E>

- java.lang.Object
- - ui.view.GUI<E>

- Type Parameters:
    `E` - Generic
  All Implemented Interfaces:
    interfaces.CategoryListener

      public class GUI<E>
      extends java.lang.Object
      implements interfaces.CategoryListener

  Graphical User Interface.
  Author:
    Gruppe14

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `GUI(ui.controller.Control control)` Create the application.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addObjectAction(java.lang.String objType, javax.swing.tree.DefaultMutableTreeNode selectedNode)` adds a specific object type to selected Category also handles input windows and illegal inputs.
    `javax.swing.JFrame` | `getFrmCyberPhysical()` Get the Frame.
    `void` | `onChange(java.util.ArrayList<classes.Category> categories)` When changes are made to the Categories.
    `void` | `updateCategories(java.util.ArrayList<classes.Category> categories)` reloads the Categories from Model.

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### GUI

          public GUI(ui.controller.Control control)

      Create the application.
      Parameters:
        `control` - the Controller

  - ### Method Detail

    - #### addObjectAction

          public void addObjectAction(java.lang.String objType,
                                      javax.swing.tree.DefaultMutableTreeNode selectedNode)

      adds a specific object type to selected Category also handles input windows and illegal inputs.
      Parameters:
        `objType` - type of the Object
        `selectedNode` - The selected Node

    - #### updateCategories

          public void updateCategories(java.util.ArrayList<classes.Category> categories)

      reloads the Categories from Model.
      Parameters:
        `categories` - the current categories

    - #### onChange

          public void onChange(java.util.ArrayList<classes.Category> categories)

      When changes are made to the Categories.
      Specified by:
        `onChange` in interface `interfaces.CategoryListener`
      Parameters:
        `categories` - the Categories

    - #### getFrmCyberPhysical

          public javax.swing.JFrame getFrmCyberPhysical()

      Get the Frame.
      Returns:
        the Frame