Search in sources :

Example 1 with MySQLConnector

use of main.database.MySQLConnector in project Info-Evaluation by TechnionYP5777.

the class MainFrame method initialize.

/**
	 * Initialize the contents of the frame.
	 */
private void initialize() {
    /*
		 * this flag to change the name of search button
		 */
    startFlag = false;
    frame = new JFrame();
    frame.setTitle("Info Evaluation");
    frame.setResizable(false);
    final Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
    frame.setBounds(0, 0, screen.width, screen.height - 1);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    try {
        connector = new MySQLConnector();
    } catch (final Exception e) {
        JOptionPane.showMessageDialog(null, "problem with sql connector", "Error", JOptionPane.INFORMATION_MESSAGE);
    }
    frame.addWindowListener(new java.awt.event.WindowAdapter() {

        @Override
        public void windowClosing(WindowEvent winEvt) {
            try {
                clearDB();
            } catch (final SQLException e) {
                JOptionPane.showMessageDialog(null, "problem with removing events from Database", "Error", JOptionPane.INFORMATION_MESSAGE);
            }
            closeConnection();
            System.exit(0);
        }
    });
    final AnalyzeSources events = new AnalyzeSources();
    events.addSource(src1);
    events.addSource(src2, "2015");
    MySQLConnector.addEvents(events.getData());
    try {
        addAllKeywords(events.getData());
    } catch (SQLException ¢) {
        ¢.printStackTrace();
    }
    final JMenuBar menuBar = new JMenuBar();
    frame.setJMenuBar(menuBar);
    mnHelp = new JMenu("Help");
    menuBar.add(mnHelp);
    mntmAbout = new JMenuItem("About");
    mnHelp.add(mntmAbout);
    popupMenu = new JPopupMenu();
    mnfilter = new JMenuItem("Filter by");
    mnprofile = new JMenuItem("View profile");
    mnprofile.setVisible(false);
    popupMenu.add(mnfilter);
    popupMenu.add(mnprofile);
    /*
		 *
		 * initializing the table
		 *
		 */
    // {
    table = new JTable();
    table.setComponentPopupMenu(popupMenu);
    table.setShowVerticalLines(false);
    table.setCellSelectionEnabled(true);
    table.setColumnSelectionAllowed(true);
    table.setBorder(new LineBorder(null));
    for (int count = 1; count <= 10; ++count) table.setModel(new DefaultTableModel(new Object[][] { { "Name", "Date", "Reason" } }, new String[] { "Name", "Date", "Reason" }));
    table.setBounds(30, 120, screen.width / 2 + 100, screen.height / 2);
    table.setVisible(false);
    js = new JScrollPane(table, ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);
    js.setComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);
    js.setVisible(false);
    js.setBounds(30, 120, screen.width / 2 + 100, screen.height / 2);
    frame.getContentPane().add(js);
    frame.getContentPane().add(js);
    /*
		 * initializing the table
		 *
		 */
    inputList = new RefineTable();
    inputList.addField("Date");
    inputList.addField("Name");
    inputList.addField("Reason");
    inputList.addField("Year");
    btnSearch = new JButton("Load analyze results");
    searchTxt = new JTextField(10);
    searchTxt.setText("Select checkBox to search");
    searchTxt.setColumns(10);
    searchTxt.setEditable(false);
    ArrayList<String> keywords = new ArrayList<String>();
    for (TableTuple t : events.getData()) {
        String year = t.getDate().split("/")[2];
        if (!keywords.contains(year))
            keywords.add(year);
        if (!keywords.contains(t.getName()))
            keywords.add(t.getName());
        for (String s : t.getKeyWords()) for (String key : s.split(" ")) {
            if (keywords.contains(key))
                continue;
            keywords.add(key);
        }
    }
    AutoComplete.setupAutoComplete(searchTxt, keywords);
    chckbxName = new JCheckBox("Name");
    chckbxName.setVisible(false);
    chckbxDate = new JCheckBox("Date");
    chckbxDate.setVisible(false);
    chckbxReason = new JCheckBox("Reason");
    chckbxReason.setVisible(false);
    chckbxSortby = new JCheckBox("Sort by");
    chckbxFilterBy = new JCheckBox("Filter by");
    comboBox = new JComboBox<>();
    comboBox.setVisible(false);
    txtpnChooseOneFrom = new JTextPane();
    txtpnChooseOneFrom.setText("Choose one from:");
    txtpnChooseOneFrom.setBackground(new Color(0, 0, 0, 0));
    txtpnChooseOneFrom.setVisible(false);
    personalInfo = new InfoExtractor();
    btnLoadAnalyzeResults = new JButton("Load analyze results");
    btnLoadAnalyzeResults.setVisible(false);
    /*
		 * add image
		 */
    BufferedImage myPicture;
    try {
        myPicture = ImageIO.read(this.getClass().getResource("images/search.png"));
        lblImage = new JLabel(new ImageIcon(myPicture.getScaledInstance(220, 220, Image.SCALE_DEFAULT)));
    } catch (IOException ¢) {
        ¢.printStackTrace();
    }
    chckbxSearch = new JCheckBox("");
    btnAddEvents = new JButton("Add Events");
    final GroupLayout groupLayout = new GroupLayout(frame.getContentPane());
    groupLayout.setHorizontalGroup(groupLayout.createParallelGroup(Alignment.LEADING).addGroup(groupLayout.createSequentialGroup().addContainerGap(881, Short.MAX_VALUE).addComponent(lblImage, GroupLayout.PREFERRED_SIZE, 232, GroupLayout.PREFERRED_SIZE).addGap(247)).addGroup(groupLayout.createSequentialGroup().addGap(30).addGroup(groupLayout.createParallelGroup(Alignment.LEADING).addGroup(groupLayout.createSequentialGroup().addComponent(btnLoadAnalyzeResults).addGap(92).addComponent(btnAddEvents, GroupLayout.PREFERRED_SIZE, 145, GroupLayout.PREFERRED_SIZE)).addGroup(groupLayout.createSequentialGroup().addComponent(chckbxSearch, GroupLayout.PREFERRED_SIZE, 29, GroupLayout.PREFERRED_SIZE).addPreferredGap(ComponentPlacement.RELATED).addGroup(groupLayout.createParallelGroup(Alignment.LEADING, false).addComponent(searchTxt, GroupLayout.PREFERRED_SIZE, 744, GroupLayout.PREFERRED_SIZE).addGroup(groupLayout.createSequentialGroup().addGroup(groupLayout.createParallelGroup(Alignment.LEADING, false).addGroup(groupLayout.createSequentialGroup().addComponent(chckbxName).addGap(18).addComponent(chckbxDate, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)).addGroup(groupLayout.createSequentialGroup().addComponent(chckbxSortby).addPreferredGap(ComponentPlacement.UNRELATED).addComponent(chckbxFilterBy))).addPreferredGap(ComponentPlacement.RELATED).addComponent(chckbxReason).addPreferredGap(ComponentPlacement.RELATED, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addComponent(txtpnChooseOneFrom, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))).addGap(18).addGroup(groupLayout.createParallelGroup(Alignment.LEADING).addComponent(btnSearch, GroupLayout.PREFERRED_SIZE, 224, GroupLayout.PREFERRED_SIZE).addComponent(comboBox, GroupLayout.PREFERRED_SIZE, 219, GroupLayout.PREFERRED_SIZE)))).addContainerGap(313, Short.MAX_VALUE)));
    groupLayout.setVerticalGroup(groupLayout.createParallelGroup(Alignment.TRAILING).addGroup(groupLayout.createSequentialGroup().addContainerGap().addGroup(groupLayout.createParallelGroup(Alignment.LEADING, false).addComponent(chckbxSearch).addGroup(groupLayout.createSequentialGroup().addGroup(groupLayout.createParallelGroup(Alignment.BASELINE).addComponent(searchTxt, GroupLayout.PREFERRED_SIZE, 31, GroupLayout.PREFERRED_SIZE).addComponent(btnSearch, GroupLayout.PREFERRED_SIZE, 28, GroupLayout.PREFERRED_SIZE)).addPreferredGap(ComponentPlacement.RELATED).addGroup(groupLayout.createParallelGroup(Alignment.BASELINE).addComponent(chckbxSortby).addComponent(chckbxFilterBy)).addPreferredGap(ComponentPlacement.RELATED).addGroup(groupLayout.createParallelGroup(Alignment.LEADING).addComponent(txtpnChooseOneFrom, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addGroup(groupLayout.createParallelGroup(Alignment.BASELINE).addComponent(chckbxName).addComponent(chckbxDate).addComponent(chckbxReason)).addComponent(comboBox, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)))).addPreferredGap(ComponentPlacement.RELATED, 177, Short.MAX_VALUE).addComponent(lblImage, GroupLayout.PREFERRED_SIZE, 193, GroupLayout.PREFERRED_SIZE).addGap(76).addGroup(groupLayout.createParallelGroup(Alignment.BASELINE).addComponent(btnLoadAnalyzeResults, GroupLayout.PREFERRED_SIZE, 35, GroupLayout.PREFERRED_SIZE).addComponent(btnAddEvents, GroupLayout.DEFAULT_SIZE, 35, Short.MAX_VALUE)).addGap(171)));
    frame.getContentPane().setLayout(groupLayout);
}
Also used : ImageIcon(javax.swing.ImageIcon) SQLException(java.sql.SQLException) LineBorder(javax.swing.border.LineBorder) DefaultTableModel(javax.swing.table.DefaultTableModel) JButton(javax.swing.JButton) ArrayList(java.util.ArrayList) JTextField(javax.swing.JTextField) BufferedImage(java.awt.image.BufferedImage) JTextPane(javax.swing.JTextPane) JFrame(javax.swing.JFrame) GroupLayout(javax.swing.GroupLayout) MySQLConnector(main.database.MySQLConnector) JMenuItem(javax.swing.JMenuItem) JScrollPane(javax.swing.JScrollPane) Color(java.awt.Color) JLabel(javax.swing.JLabel) Dimension(java.awt.Dimension) AnalyzeSources(main.Analyze.AnalyzeSources) IOException(java.io.IOException) SQLException(java.sql.SQLException) IOException(java.io.IOException) JPopupMenu(javax.swing.JPopupMenu) Point(java.awt.Point) JCheckBox(javax.swing.JCheckBox) TableTuple(main.database.TableTuple) WindowEvent(java.awt.event.WindowEvent) JTable(javax.swing.JTable) JMenuBar(javax.swing.JMenuBar) JMenu(javax.swing.JMenu)

Aggregations

Color (java.awt.Color)1 Dimension (java.awt.Dimension)1 Point (java.awt.Point)1 WindowEvent (java.awt.event.WindowEvent)1 BufferedImage (java.awt.image.BufferedImage)1 IOException (java.io.IOException)1 SQLException (java.sql.SQLException)1 ArrayList (java.util.ArrayList)1 GroupLayout (javax.swing.GroupLayout)1 ImageIcon (javax.swing.ImageIcon)1 JButton (javax.swing.JButton)1 JCheckBox (javax.swing.JCheckBox)1 JFrame (javax.swing.JFrame)1 JLabel (javax.swing.JLabel)1 JMenu (javax.swing.JMenu)1 JMenuBar (javax.swing.JMenuBar)1 JMenuItem (javax.swing.JMenuItem)1 JPopupMenu (javax.swing.JPopupMenu)1 JScrollPane (javax.swing.JScrollPane)1 JTable (javax.swing.JTable)1