Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.*;
- import java.awt.*;
- import java.applet.Applet;
- import java.awt.event.*;
- import java.awt.MenuItem.*;
- import java.awt.event.MouseEvent;
- import java.awt.geom.*;
- public class events extends Applet implements MouseListener, MouseMotionListener, ActionListener
- {
- PopupMenu popup;
- int mouseX1, mouseY1, mouseX2, mouseY2;
- int x_click,y_click;
- Graphics2D gg;
- Color[] culoare=new Color[] {Color.red,Color.green, Color.blue, Color.yellow, Color.black};
- String[] numeFigura = new String[] {"linie", "dreptunghi", "cerc"};
- String[] numeCuloare = new String[] {"rosu", "verde", "albastru", "galben","negru"};
- boolean PaintByDrag;
- Vector figuri,culori;
- int indexCulori,indexFiguri;
- String mouseClickedStr,mousePressedStr,mouseDraggedStr;
- String drawModeStr,drawColorStr;
- public void init()
- {
- addMouseListener(this);
- addMouseMotionListener(this);
- figuri=new Vector();
- culori=new Vector();
- popup=new PopupMenu();
- Menu figura=new Menu("Figuraa");
- popup.add(figura);
- for (int i=0;i<numeFigura.length;i++)
- {
- MenuItem mi=new MenuItem(numeFigura[i]);
- mi.setActionCommand(numeFigura[i]);
- mi.addActionListener(this);
- figura.add(mi);
- }
- Menu culoare=new Menu("Culoare");
- popup.add(culoare);
- //System.exit(3);
- Menu deseneaza=new Menu("Deseneaza");
- popup.add(deseneaza);
- MenuItem muu=new MenuItem("Acum");
- muu.setActionCommand("Acum");
- muu.addActionListener(this);
- deseneaza.add(muu);
- for (int i=0;i<numeCuloare.length;i++)
- {
- MenuItem mi=new MenuItem(numeCuloare[i]);
- mi.setActionCommand(numeCuloare[i]);
- mi.addActionListener(this);
- culoare.add(mi);
- }
- indexFiguri = 0;
- indexCulori = 0;
- mouseClickedStr = "";
- mousePressedStr = "";
- mouseDraggedStr = "";
- drawModeStr = "Modul de desenare "+numeFigura[indexFiguri];
- drawColorStr = "Culoarea "+numeCuloare[indexCulori];
- this.add(popup);
- /*
- * Adaugam 2 figuri
- */
- figuri.addElement((new Line2D.Double(60,60,180,180)));
- culori.addElement((Integer)0);
- figuri.addElement(new Rectangle2D.Double(270,270,100,100));
- culori.addElement((Integer)1);
- }
- public void processMouseEvent(MouseEvent me)
- {
- if (me.isPopupTrigger())
- popup.show(this,me.getX(),me.getY());
- else super.processMouseEvent(me);
- }
- public void actionPerformed(ActionEvent event)
- {
- String command = event.getActionCommand();
- if(command.equals("linie")) linie();
- if (command.equals("dreptunghi")) dreptunghi();
- if (command.equals("cerc")) cerc();
- if (command.equals("rosu")) rosu();
- if (command.equals("verde")) verde();
- if (command.equals("albastru")) albastru();
- if (command.equals("galben")) galben();
- if (command.equals("negru")) negru();
- if (command.equals("Acum")) {
- paintIt();
- }
- }
- public void linie()
- {
- indexFiguri=0;
- drawModeStr = "Modul de desenare "+numeFigura[indexFiguri];
- }
- void dreptunghi()
- {
- indexFiguri=1;
- drawModeStr = "Modul de desenare "+numeFigura[indexFiguri];
- }
- void cerc()
- {
- indexFiguri=2;
- drawModeStr = "Modul de desenare "+numeFigura[indexFiguri];
- }
- void rosu()
- {
- indexCulori = 0;
- drawColorStr = "Culoarea "+numeCuloare[indexCulori];
- }
- void verde()
- {
- indexCulori = 1;
- drawColorStr = "Culoarea "+numeCuloare[indexCulori];
- }
- void albastru()
- {
- indexCulori = 2;
- drawColorStr = "Culoarea "+numeCuloare[indexCulori];
- }
- void galben()
- {
- indexCulori = 3;
- drawColorStr = "Culoarea "+numeCuloare[indexCulori];
- }
- void negru()
- {
- indexCulori = 4;
- drawColorStr = "Culoarea "+numeCuloare[indexCulori];
- }
- void paintIt()
- {
- if(indexFiguri == 0)
- {
- figuri.addElement((new Line2D.Double(30,40,mouseX2,mouseY2)));
- culori.addElement((Integer) indexCulori);
- }
- if(indexFiguri == 1)
- {
- figuri.addElement(new Rectangle2D.Double(30,20,mouseX2,mouseY2));
- culori.addElement((Integer) indexCulori);
- }
- if(indexFiguri == 2)
- {
- /*
- * drawOval(centerX, centerY, radiusX, radiusY
- */
- //gg.drawOval(x1, y1, w1*2, w1*2);
- }
- }
- public void paint(Graphics g)
- {
- Graphics2D gg;
- gg=(Graphics2D) g;
- String drawMouseStr;
- String drawMode;
- drawMode = drawModeStr+" "+"folosind "+"Nr fig "+ drawColorStr+figuri.size();
- drawMouseStr = "";
- if(mouseClickedStr.length()>0)
- drawMouseStr = mouseClickedStr+x_click+" "+y_click;
- if(mousePressedStr.length()>0)
- drawMouseStr = mousePressedStr+mouseX1+" "+mouseY1;
- if(mouseDraggedStr.length()>0)
- drawMouseStr = mouseDraggedStr+mouseX2+" "+mouseY2;
- if(drawMode.length()>0)
- {
- gg.setColor(Color.black);
- gg.drawString(drawMode,10,20);
- }
- if(drawMouseStr.length()>0)
- {
- gg.setColor(Color.black);
- gg.drawString(drawMouseStr,10,40);
- }
- for(int i=0;i<figuri.size();i++)
- {
- gg.setColor(culoare[((Integer)culori.get(i)).intValue()]);
- gg.draw((Shape)figuri.elementAt(i));
- if (culori.get(i)!=null){
- gg.setColor(culoare[((Integer)culori.get(i)).intValue()]);
- gg.fill((Shape)figuri.elementAt(i));
- }
- }
- }
- public void mouseClicked(MouseEvent me)
- {
- x_click=me.getX();
- y_click=me.getY();
- mouseClickedStr = "Mouse clicked at ";
- mousePressedStr = "";
- mouseDraggedStr = "";
- repaint();
- }
- public void mousePressed(MouseEvent me)
- {
- mouseX1=me.getX();
- mouseY1=me.getY();
- mouseClickedStr = "";
- mousePressedStr = "Mouse pressed at ";
- mouseDraggedStr = "";
- repaint();
- }
- public void mouseEntered(MouseEvent me){}
- public void mouseExited(MouseEvent me){}
- public void mouseReleased(MouseEvent me)
- {
- PaintByDrag=false;
- }
- public void mouseDragged (MouseEvent me)
- {
- PaintByDrag=true;
- mouseX2=me.getX();
- mouseY2=me.getY();
- mouseClickedStr = "";
- mousePressedStr = "";
- mouseDraggedStr = "Mouse dragged at ";
- repaint();
- }
- public void mouseMoved (MouseEvent me){}
- }
Add Comment
Please, Sign In to add comment