Package main.ui

Source Code of main.ui.UserFrame

package main.ui;

import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;

import javax.swing.JButton;

import BlobUI.BlobPublishingCameraPanel;

import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.io.IOException;

public class UserFrame extends JFrame {
  BlobUI.BlobPublishingCameraPanel cameraPanel = null;

  /**
   * Create the frame.
   */
  public UserFrame() {
    setTitle("Video Object Motion Tracking");
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setSize(800, 600);
    getContentPane().setLayout(null);

    JPanel controlPanel = new JPanel();
    controlPanel.setBounds(10, 11, 414, 24);
    getContentPane().add(controlPanel);
    controlPanel.setLayout(null);

    final JButton btnClose = new JButton("Stop");
    final JButton btnOpenFile = new JButton("Open..");
    final JButton btnWebcam = new JButton("Webcam");

    btnClose.setVisible(false);
    btnClose.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent e) {
        if (cameraPanel != null) {
          cameraPanel.setVisible(false);
          cameraPanel.closeCameraPanel();
          getContentPane().remove(cameraPanel);
          cameraPanel = null;
          btnOpenFile.setVisible(true);
          btnWebcam.setVisible(true);
          btnClose.setVisible(false);
        }
      }
    });

    btnOpenFile.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent arg0) {
        JFileChooser fc = new JFileChooser();
        String path = "";
        int returnVal = 0;
        JFileChooser jFileChooser1 = new javax.swing.JFileChooser();
        returnVal = jFileChooser1.showOpenDialog(UserFrame.this);
        if (returnVal == javax.swing.JFileChooser.APPROVE_OPTION) {
          try {
            path = jFileChooser1.getSelectedFile()
                .getCanonicalPath();
          } catch (IOException e) {
            JOptionPane.showMessageDialog(null,
                "Unable to open video");
          }
          cameraPanel = new BlobPublishingCameraPanel(path);
          if (cameraPanel.isProcessing() == false) {
            cameraPanel = null;
            btnOpenFile.setVisible(true);
            btnWebcam.setVisible(true);
            btnClose.setVisible(false);
          } else {
            cameraPanel.setVisible(true);
            cameraPanel.switchFeed(0);
            getContentPane().add(cameraPanel);
            btnOpenFile.setVisible(false);
            btnWebcam.setVisible(false);
            btnClose.setVisible(true);
          }
        }
      }
    });

    btnOpenFile.setBounds(0, 0, 89, 23);
    controlPanel.add(btnOpenFile);
    btnClose.setBounds(89, 0, 89, 23);
    controlPanel.add(btnClose);

    btnWebcam.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent arg0) {
        cameraPanel = new BlobPublishingCameraPanel("webcam");
        if (cameraPanel.isProcessing() == false) {
          cameraPanel = null;
          btnOpenFile.setVisible(true);
          btnWebcam.setVisible(true);
          btnClose.setVisible(false);
        } else {
          cameraPanel.setVisible(true);
          cameraPanel.switchFeed(0);
          getContentPane().add(cameraPanel);
          btnWebcam.setVisible(false);
          btnOpenFile.setVisible(false);
          btnClose.setVisible(true);
        }
      }
    });
    btnWebcam.setBounds(178, 0, 89, 23);
    controlPanel.add(btnWebcam);
  }
}
TOP

Related Classes of main.ui.UserFrame

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.