Advertisement
Guest User

list model

a guest
Jun 22nd, 2017
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.43 KB | None | 0 0
  1. package hr.fer.zemris.java.hw16.jvdraw;
  2.  
  3. import javax.swing.AbstractListModel;
  4.  
  5. import hr.fer.zemris.java.hw16.jvdraw.shapes.GeometricalObject;
  6.  
  7. /**
  8. * List model used for tracking which objects are currently on the screen.
  9. *
  10. * @author Lovro Marković
  11. *
  12. */
  13. public class DrawObjectListModel extends AbstractListModel<GeometricalObject> {
  14.  
  15. /**
  16. * Serial version ID.
  17. */
  18. private static final long serialVersionUID = 1L;
  19.  
  20. /**
  21. * Reference to the drawing model.
  22. */
  23. private IDrawingModel dModel;
  24.  
  25. /**
  26. * Default constructor for the list model.
  27. *
  28. * @param dModel
  29. * Reference to the drawing model.
  30. */
  31. public DrawObjectListModel(IDrawingModel dModel) {
  32. this.dModel = dModel;
  33.  
  34. dModel.addDrawingModelListener(new IDrawingModelListener() {
  35.  
  36. @Override
  37. public void objectsRemoved(IDrawingModel source, int index0,
  38. int index1) {
  39. fireIntervalRemoved(source, index0, index1);
  40. }
  41.  
  42. @Override
  43. public void objectsChanged(IDrawingModel source, int index0,
  44. int index1) {
  45. fireContentsChanged(source, index0, index1);
  46. }
  47.  
  48. @Override
  49. public void objectsAdded(IDrawingModel source, int index0,
  50. int index1) {
  51. fireIntervalAdded(source, index0, index1);
  52. }
  53. });
  54. }
  55.  
  56. @Override
  57. public int getSize() {
  58. return dModel.getSize();
  59. }
  60.  
  61. @Override
  62. public GeometricalObject getElementAt(int index) {
  63. return dModel.getObject(index);
  64. }
  65.  
  66. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement