Hello, i am having to study Java at the moment, i am actually a digital artist but i have to take a java course aswell to get some programming knowledge. I have been given an assignment to do which consists of 10 tasks. I have completed tasks 1-6 and 8-10. I am having trouble however with the 7th. I understand what i have to do i just cant seem to get it to work.

The program is the beginnings of a connect 4 game and i have code so that when i click in the grid i have created it will return a number (1,2 or 3) to say which mouse button was used to click. At the moment, any click will place a red counter in any of the squares, but i want to make it so that a yellow circle will be placed when a right click is made. My code is below, any help will be greatly appreciated, thanks.

import java.awt.*;
import java.awt.geom.*;
import javax.swing.*;
import java.awt.event.MouseListener;
import java.awt.event.MouseEvent;
import java.awt.event.*;

class GridPanel extends JPanel implements MouseListener
	public void mouseReleased(MouseEvent event)
		System.out.println("Mouse Released");
	public void mousePressed(MouseEvent event)
		System.out.println("Mouse Pressed");
	public void mouseClicked(MouseEvent event)
			int x =	event.getX();
			int y =	event.getY();
			int w = getWidth();
			int h = getHeight();
			int click = event.getClickCount();
			col_index = x*numCols/w;
			row_index = y*numRows/h;

			System.out.println("the x position is " + x);
			System.out.println("the y position is " + y);
			System.out.println("Column clicked" + col_index);
			System.out.println("Row Clicked" + row_index);
			System.out.println("The button clicked was " + event.getButton());
			System.out.println("Amount of times button was clicked: " + event.getClickCount());
			System.out.println("Shift or Control key hold, True or False: " + event.isControlDown());
	public void mouseEntered(MouseEvent event)
		System.out.println("Mouse Entered");
	public void mouseExited(MouseEvent event)
		System.out.println("Mouse Exited");
	int numCols;
	int numRows;
	int col_index=0;
	int row_index=0;

	public GridPanel(int nc, int nr)
		numCols = nc;
		numRows = nr;

	Rectangle getRect(int thisCol, int thisRow)
		// if input is out of range, return "null"
		if(thisCol <0 || thisRow < 0)
			return null;
		if(thisCol>=numCols || thisRow>=numRows)
			return null;

		// otherwise, make and return the Rectangle
		int w = getWidth()/numCols;
		int h = getHeight()/numRows;

		int x = thisCol*w;
		int y = thisRow*h;

		Rectangle myRect = new Rectangle(x,y,w,h);
		return myRect;

	public void paint(Graphics g)
		g.fillRect(0,0,getWidth(), getHeight());

		Graphics2D g2 = (Graphics2D)g;
		// we'll use Graphics2D for it's "draw" method -
		// neater than the Graphics "drawRect" suppled
		// (which you could also use)

		for (int i = 0;i<numCols;i++)
			for(int j = 0;j<numRows;j++)
				Rectangle r = getRect(i,j);
			if (col_index>-1)
				Rectangle r = getRect(col_index, row_index);
				g.fillOval(r.x,r.y,r.width, r.height);
				g.drawOval(r.x,r.y,r.width, r.height);

	// copied from the W2MouseEvents for convenience
	// (so we can run the program from GridPanel class too!)
	public static void main(String[] args)
		W2MouseEvents w = new W2MouseEvents();