ObjectControl.java 826 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. package ui.controller;
  2. import classes.CpsObject;
  3. import ui.model.IdCounter;
  4. import ui.model.Model;
  5. import Interfaces.ObjectListener;
  6. public class ObjectControl {
  7. private Model M;
  8. private int ID;
  9. public ObjectControl(Model model) {
  10. this.M = model;
  11. ID = IdCounter.nextId();
  12. }
  13. /**
  14. * Add an CpsObject to the model and notify the ObjectListener for update.
  15. *
  16. * @param object
  17. * CpsObject to be added.
  18. */
  19. public void addObject(CpsObject object) {
  20. String name = object.getObjName();
  21. M.getObjectsOnCanvas().add(object);
  22. notifyObjListeners();
  23. System.out.println("Added: " + name);
  24. }
  25. /**
  26. * notifies all listeners about changes in the Categories
  27. */
  28. public void notifyObjListeners() {
  29. for (ObjectListener l : M.getObjectListeners()) {
  30. l.onChange(M.getObjectsOnCanvas());
  31. }
  32. }
  33. }