Advertisement
sixshoot95

Gengsta rep mejdmi duit

Jan 8th, 2017
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.05 KB | None | 0 0
  1. package geometrija;
  2.  
  3. import java.awt.Color;
  4. import java.awt.Graphics;
  5. import java.awt.Rectangle;
  6.  
  7. import javax.swing.JComponent;
  8. import javax.swing.RepaintManager;
  9.  
  10. import java.awt.event.MouseAdapter;
  11. import java.awt.event.MouseEvent;
  12. import java.awt.event.MouseListener;
  13. import java.awt.event.MouseMotionAdapter;
  14. import java.awt.image.renderable.RenderContext;
  15. import java.util.ArrayList;
  16. import java.util.Iterator;
  17.  
  18. public class CrtezBoss extends JComponent {
  19. int x;
  20. int y;
  21. int xEnd, xStart;
  22. int yEnd, yStart;
  23. int flag = 0;
  24. boolean klik = false;
  25. private Graphics g;
  26. int temp;
  27.  
  28. public ArrayList<Oblik> lista = new ArrayList<Oblik>();
  29.  
  30. public ArrayList<Oblik> listaUndo = new ArrayList<Oblik>();
  31.  
  32. public ArrayList<Oblik> SvCPUVelikomucenik = new ArrayList<>();
  33.  
  34. public static void main(String[] args) {
  35.  
  36. }
  37.  
  38. public CrtezBoss() {
  39. addMouseListener(new MouseAdapter() {
  40.  
  41.  
  42. @Override
  43. public void mousePressed(MouseEvent e) {
  44.  
  45. if (Aplikacija.staRadim == CrtOpcija.DEFAULT) {
  46. }
  47. if (Aplikacija.staRadim == CrtOpcija.TACKA) {
  48. lista.add(new Tacka(e.getX(), e.getY()));
  49. } else if (Aplikacija.staRadim == CrtOpcija.LINIJA) {
  50. if (flag == 0) {
  51. xStart = e.getX();
  52. yStart = e.getY();
  53. flag = 1;
  54. } else {
  55. lista.add(new Linija(new Tacka(xStart, yStart), new Tacka(e.getX(), e.getY())));
  56. flag = 0;
  57. }
  58. } else if (Aplikacija.staRadim == CrtOpcija.KVADRAT) {
  59.  
  60. DialKvadrat d1 = new DialKvadrat();
  61. d1.setVisible(true);
  62. lista.add(new Kvadrat(new Tacka(e.getX(), e.getY()), d1.getDuzinaStranice()));
  63. } else if (Aplikacija.staRadim == CrtOpcija.PRAVOUGAONIK) {
  64. DialPravougaonik d2 = new DialPravougaonik();
  65. d2.setVisible(true);
  66. lista.add(new Pravougaonik(new Tacka(e.getX(), e.getY()), DialPravougaonik.getDuzinaStranice(),
  67. DialPravougaonik.getVisina()));
  68.  
  69. } else if (Aplikacija.staRadim == CrtOpcija.KRUG) {
  70. Tacka tCentar = new Tacka(e.getX(), e.getY());
  71. DialKrug d3 = new DialKrug();
  72. d3.setVisible(true);
  73. lista.add(new Krug(tCentar, DialKrug.getPoluprecnik()));
  74.  
  75. } else if (Aplikacija.staRadim == CrtOpcija.SELEKTUJ) {
  76. temp = 1337;
  77.  
  78. x = e.getX();
  79. y = e.getY();
  80. lista.forEach((a) -> {
  81. if (a.sadrzi(x, y) == true) {
  82. temp = lista.indexOf(a);
  83. }
  84. });
  85.  
  86. if (lista.get(temp).isSelektovan() == true && temp!=1337 && lista.isEmpty()==false) {
  87. lista.get(temp).setSelektovan(false);
  88. } else if(temp!=1337 && lista.isEmpty()==false) {
  89. lista.get(temp).setSelektovan(true);
  90. }
  91.  
  92.  
  93. }
  94.  
  95. }
  96. @Override
  97. public void mouseReleased(MouseEvent arg0) {
  98. // lista.forEach((a) -> {
  99. // if (a.isSelektovan() == true) {
  100. // a.selektovan(g);
  101. // }
  102. // a.crtajSe(g);
  103. // });
  104. revalidate();
  105. repaint();
  106.  
  107. }
  108. });
  109.  
  110. }
  111.  
  112. public void paintComponent(Graphics g) {
  113. Iterator it = lista.iterator();
  114. Iterator un = listaUndo.iterator();
  115.  
  116. if (Aplikacija.staRadim == CrtOpcija.OBRISI_SVE) {
  117. g.clearRect(0, 0, getWidth(), getHeight());
  118. lista.clear();
  119. Aplikacija.staRadim = CrtOpcija.DEFAULT;
  120. }
  121. if (Aplikacija.staRadim == CrtOpcija.UNDO) {
  122. if (!lista.isEmpty()) {
  123. listaUndo.add(lista.get(lista.size() - 1));
  124. lista.remove(lista.size() - 1);
  125.  
  126. }
  127. Aplikacija.staRadim = CrtOpcija.DEFAULT;
  128. }
  129. if (Aplikacija.staRadim == CrtOpcija.REDO) {
  130. if (!listaUndo.isEmpty()) {
  131. lista.add(listaUndo.get(listaUndo.size() - 1));
  132. listaUndo.remove(listaUndo.size() - 1);
  133. }
  134.  
  135. Aplikacija.staRadim = CrtOpcija.DEFAULT;
  136. }
  137. if (Aplikacija.staRadim == CrtOpcija.OBRISI) {
  138. lista.forEach((a) -> {
  139. if (a.isSelektovan()) {
  140. temp = lista.indexOf(a);
  141. }
  142. });
  143.  
  144. lista.remove(lista.get(temp));
  145.  
  146. Aplikacija.staRadim = CrtOpcija.DEFAULT;
  147. }
  148.  
  149. lista.forEach((a) -> {
  150. if (a.isSelektovan() == true) {
  151. a.selektovan(g);
  152. }
  153. a.crtajSe(g);
  154. });
  155. //
  156. // getRootPane().validate();
  157. // getRootPane().repaint();
  158. }
  159.  
  160. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement