public GridWindow() {
		repository = new Repository();
		searchMatch = new BookData();

		// instantiate the GUI componetns
		btnSearch = new JButton("Search");
		btnSearch.addActionListener(this);
		txtSearch = new JTextField(15);
		btnCompare = new JButton("Compare");
		btnCompare.setEnabled(true);
		btnCompare.addActionListener(this);
		btnClear = new JButton("Clear Selection");
		btnClear.addActionListener(this);
		mainScroll = new JScrollPane();
		verticalDivider = new JPanel();
		xAxisSel = new JComboBox(BookData.CATEGORY);
		yAxisSel = new JComboBox(BookData.CATEGORY);
		xAxisSel.setSelectedIndex(4);
		yAxisSel.setSelectedIndex(1);
		xAxisLabel = new ArrayList<String>();
		yAxisLabel = new ArrayList<String>();
		btnSet = new JButton("Set");
		btnSet.addActionListener(this);
		chkVis = new JCheckBox("Visualization");
		chkVis.setSelected(true);
		chkVis.addActionListener(this);
		/*
		axisPanel.add(new JLabel("X Axis:"));
		axisPanel.add(xAxisSel);
		axisPanel.add(new JLabel("Y Axis:"));
		axisPanel.add(yAxisSel);
		axisPanel.add(btnSet);
		*/
		
		//Add the vertical divider.
		verticalDivider.setBounds(ACTUAL_WINDOW_WIDTH-301, 0, 1, ACTUAL_WINDOW_HEIGHT);
		verticalDivider.setBackground(Color.BLACK);
		this.getContentPane().add(verticalDivider);
		
		//Add the horizontal dividers.
		JPanel panel = new JPanel();
		panel.setBackground(Color.BLACK);
		panel.setBounds(1284, 200, 300, 1);
		this.getContentPane().add(panel);
		
		JPanel panel3 = new JPanel();
		panel3.setBackground(Color.BLACK);
		panel3.setBounds(1284, 299, 300, 1);
		this.getContentPane().add(panel3);
		////////////////////////////////////////
		
		gridPanel = new JPanel();
		gridPanel.setBounds(0, 0, ACTUAL_WINDOW_WIDTH-300, ACTUAL_WINDOW_HEIGHT);
		mainScroll.getViewport().add(gridPanel);
		this.setLayout(null);
		
		xAxisSel.setBounds(ACTUAL_WINDOW_WIDTH-250, 212, 90, 23);
		this.getContentPane().add(xAxisSel);
		yAxisSel.setBounds(ACTUAL_WINDOW_WIDTH-300+40+90+30, 212, 90, 23);
		this.getContentPane().add(yAxisSel);
		btnSet.setBounds(ACTUAL_WINDOW_WIDTH-300+40+90+30, 262, 90, 23);
		this.getContentPane().add(btnSet);
		
		mainScroll.setBounds(0, 0, ACTUAL_WINDOW_WIDTH-300, ACTUAL_WINDOW_HEIGHT);
		this.getContentPane().add(mainScroll);
		
		chkVis.setBounds(ACTUAL_WINDOW_WIDTH-250, 262, 85, 23);
		this.getContentPane().add(chkVis);
		
		btnCompare.setBounds(1444, 100, 90, 23);
		this.getContentPane().add(btnCompare);
		
		txtSearch.setBounds(1334, 40, 200, 20);
		this.getContentPane().add(txtSearch);
		btnSearch.setBounds(1444, 69, 90, 23);
		this.getContentPane().add(btnSearch);
		//this.getContentPane().add(selectPanel, BorderLayout.SOUTH);
		this.setTitle("Repository Visualization");
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

		this.pack();
	}