JucK Dev

From CSWiki
Jump to: navigation, search

Juck

  • calls Parser; Parser returns a PanelDescr pd
  • sends to JuckOSC:
    • the target machine of OSC messages
    • port to send through
    • title of the GUI
  • calls GuiMakerManual or GuiMakerPanel; GuiMaker returns void creates GUI

Parser

  • handles errors and exceptions
  • calls PanelDescr; creates an instance of a PanelDescr
  • calls ParsePanel and ParseManual to set GUI elements
  • parses .jk file; sets PanelElement of PanelDescr pd

ParsePanel, ParseManual

  • sets the GUI elements
  • returns to Parser

PanelDescr

  • contains
    • title of GUI
    • target machine of OSC messages
    • port to send OSC messages out of
    • vector of all GUI elements

PanelElements

  • contains any parameter that a Gui element could contain
    • String name
    • int type
    • int min
    • int max
    • int initial
    • int interval
    • boolean snap
    • int orientation
    • int num_items
    • int num_columns
    • String[] items
    • String[] names_rows
    • String[] names_columns
    • int width
    • int height
    • int x
    • int y

GuiMaker (Manual or Panel)

  • calls PanelCreator; sends the vector of Gui elements of PanelDescr pd
  • displays the panel with all of the element subpanels (display method depends on the elements and the layout)

PanelCreator

  • calls one of the element classes (Slider, CheckBox, RadioButton, DropDown, TextField, TwoDCheckBox, TwoDGrid, Button)
  • returns individual element panels to GuiMaker

Slider, CheckBox, RadioButton, DropDown, TextField, TwoDCheckBox, TwoDGrid, Button

  • creates a panel containing the desired element with the desired properies; returns this panel to GuiMaker
  • sends to JuckOSC (by calling a corresponding method in JuckOSC)
    • type of element
    • name of element
    • output of the listener (e.g. int, string, boolean)

JuckOSC

  • receives information from Juck and individual Gui elements (Slider, CheckBox, RadioButton, DropDown, TextField, TwoDCheckBox, TwoDGrid, Button)
  • sends OSC messages