123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175 |
- /*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
-
- package mvcgrafik.controller;
-
- import java.awt.Point;
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- import java.awt.event.KeyEvent;
- import java.awt.event.KeyListener;
- import java.awt.event.MouseEvent;
- import java.awt.event.MouseListener;
- import java.awt.event.MouseMotionListener;
- import java.io.File;
- import java.io.IOException;
- import java.io.UnsupportedEncodingException;
- import java.util.logging.Level;
- import java.util.logging.Logger;
- import java.util.prefs.Preferences;
- import javax.swing.JFileChooser;
- import mvcgrafik.model.Figure;
- import mvcgrafik.model.GrafikModel;
- import mvcgrafik.view.GrafikMenuView;
- import mvcgrafik.logger.OhmLogger;
-
-
- /**
- *
- * @author le
- */
- public class GrafikController implements MouseMotionListener, MouseListener, ActionListener
- {
- private GrafikMenuView view;
- //private GrafikMenuView menuview;
- private GrafikModel model;
- private Figure figure;
- private Point p_old;
- private static Logger lg = OhmLogger.getLogger();
-
- public GrafikController(GrafikMenuView view, GrafikModel model)
- {
- this.view = view;
- this.model = model;
- }
-
- public void registerEvents()
- {
- view.addMouseMotionListener(this);
- view.addMouseListener(this);
- view.getBtnOpen().addActionListener(this);
- view.getBtnSafe().addActionListener(this);
- }
-
- @Override
- public void mouseDragged(MouseEvent evt)
- {
- if(figure == null)
- {
- lg.info("new Figure");
- figure = model.addFigure();
- }
- Point p = evt.getPoint();
- if(p_old != null){
- // view.drawLine(p, p_old);
- view.getGrafikView1().drawLine(p, p_old);
- }
- p_old = p;
- figure.addPoint(p);
- }
-
- @Override
- public void mouseMoved(MouseEvent e)
- {
- }
-
- @Override
- public void mouseClicked(MouseEvent e)
- {
- lg.info("clicked");
- figure = model.addFigure();
-
- }
-
- @Override
- public void mousePressed(MouseEvent e)
- {
- }
-
- @Override
- public void mouseReleased(MouseEvent evt)
- {
-
- p_old = null;
- figure = null;
- lg.info("Figure finished");
- if (evt.getButton() == MouseEvent.BUTTON3)
- {
- // view.doPrint();
- view.getGrafikView1().doPrint();
- }
- }
-
- @Override
- public void mouseEntered(MouseEvent e)
- {
- }
-
- @Override
- public void mouseExited(MouseEvent e)
- {
- }
-
- @Override
- public void actionPerformed(ActionEvent ae)
- {
- if(ae.getSource() == view.getBtnSafe())
- {
- Preferences pref = Preferences.userNodeForPackage(this.getClass());
- String path = pref.get("DEFAULT_PATH", "");
- view.getjFileChooser1().setCurrentDirectory(new File(path));
-
-
- int choice = view.getjFileChooser1().showSaveDialog(view);
- if (choice == JFileChooser.APPROVE_OPTION)
- {
- File selectedFile = view.getjFileChooser1().getSelectedFile();
- pref.put("DEFAULT_PATH", selectedFile.getAbsolutePath());
- try
- {
- //model.datenSpeichern(selectedFile);
- model.speichereDatei("TEST");
- }
- catch (UnsupportedEncodingException ex)
- {
- Logger.getLogger(GrafikController.class.getName()).log(Level.SEVERE, null, ex);
- }
- catch (IOException ex)
- {
- Logger.getLogger(GrafikController.class.getName()).log(Level.SEVERE, null, ex);
- }
- }
- }
- if(ae.getSource() == view.getBtnOpen())
- {
- Preferences pref = Preferences.userNodeForPackage(this.getClass());
- String path = pref.get("DEFAULT_PATH", "");
- view.getjFileChooser1().setCurrentDirectory(new File(path));
-
- int choice = view.getjFileChooser1().showOpenDialog(view);
- if (choice == JFileChooser.APPROVE_OPTION)
- {
- File selectedFile = view.getjFileChooser1().getSelectedFile();
-
- pref.put("DEFAULT_PATH", selectedFile.getAbsolutePath());
- try
- {
- //model.datenLesen(selectedFile);
- model.ladeDatei("TEST");
- }
- catch (UnsupportedEncodingException ex)
- {
- Logger.getLogger(GrafikController.class.getName()).log(Level.SEVERE, null, ex);
- }
- catch (IOException | ClassNotFoundException ex)
- {
- Logger.getLogger(GrafikController.class.getName()).log(Level.SEVERE, null, ex);
- }
- }
- }
- }
- }
|