Control.java 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. package ui.controller;
  2. import java.awt.event.ActionEvent;
  3. import java.awt.event.ActionListener;
  4. import java.util.LinkedList;
  5. import classes.Category;
  6. import classes.CpsObject;
  7. import classes.HolonObject;
  8. import Interfaces.CategoryListener;
  9. import ui.model.Model;
  10. import ui.view.GUI;
  11. public class Control {
  12. public enum command {
  13. CATEGORY, OBJECT
  14. }
  15. private Model MODEL;
  16. private ActionListener actionListener;
  17. private final CategoryController categoryController;
  18. private final ObjectController objectController;
  19. private final CanvasController canvasController;
  20. private final GlobalController globalController;
  21. public Control(Model model) {
  22. this.MODEL = model;
  23. this.categoryController = new CategoryController(model);
  24. this.objectController = new ObjectController(model);
  25. this.canvasController = new CanvasController(model);
  26. this.globalController = new GlobalController(model);
  27. }
  28. /* Operations for Categories and Objects */
  29. public void addCategory(String catName) {
  30. categoryController.addNewCategory(catName);
  31. }
  32. public void addObject(Category cat, String name, String objType) {
  33. categoryController.addNewHolonObject(cat, name, objType);
  34. }
  35. public void addObjectCategory(Category cat, HolonObject object) {
  36. categoryController.addObject(cat, object);
  37. }
  38. public void addTransformer(Category cat, String name, String objType) {
  39. categoryController.addNewHolonTransformer(cat, name, objType);
  40. }
  41. public void addSwitch(Category cat, String name, String objType) {
  42. categoryController.addNewHolonSwitch(cat, name, objType);
  43. }
  44. public Category searchCategory(String name) {
  45. return categoryController.searchCatNode(name);
  46. }
  47. public void deleteCategory(String catName) {
  48. categoryController.deleteCategory(catName);
  49. }
  50. public void delObjectCategory(String toDelete, String deleteIn) {
  51. categoryController.deleteObjectInCat(toDelete, deleteIn);
  52. }
  53. /* Operations for Canvas */
  54. public void addObjectCanvas(CpsObject object) {
  55. canvasController.addObjectIntoCanvas(object);
  56. }
  57. public void setSelectedObjectID(int id) {
  58. objectController.setSelectedObjectID(id);
  59. }
  60. public void deleteObjectOnCanvas(CpsObject obj) {
  61. canvasController.deleteObjectOnCanvas(obj);
  62. }
  63. /* Operations for Objects and Elements */
  64. public void addElementCanvasObject(String objName, String eleName, int amount, float energy) {
  65. objectController.addNewElementIntoCanvasObject(objName, eleName, amount, energy);
  66. }
  67. public void addElementCategoryObject(String catName, String objName, String eleName, int amount,
  68. float energy) {
  69. objectController.addNewElementIntoCategoryObject(catName, objName, eleName, amount, energy);
  70. }
  71. public void deleteElementCanvas(int id, String element) {
  72. objectController.deleteElementInCanvas(id, element);
  73. }
  74. public CpsObject searchByID(int ID){
  75. return objectController.searchByID(ID);
  76. }
  77. /* Global Operations*/
  78. public int getScale(){
  79. return globalController.getScale();
  80. }
  81. public int getScaleDiv2(){
  82. return globalController.getScaleDiv2();
  83. }
  84. public void setScale(int s){
  85. globalController.setScale(s);
  86. }
  87. ////////// etc
  88. public void initListener(CategoryListener catLis) {
  89. categoryController.addCategoryListener(catLis);
  90. }
  91. /**
  92. * Getter for Model
  93. *
  94. * @return
  95. */
  96. public Model getModel() {
  97. return MODEL;
  98. }
  99. }