public FollowerList(User currUser, ResultSet rs, Connection cnxn, boolean confirmedVal, GUI currGUI) {
        super(new BorderLayout());
        this.currGUI = currGUI;
        this.currUser = currUser;
        this.cnxn = cnxn;
        this.confirmedVal = confirmedVal;
        this.listModel = new DefaultListModel();
        
        //keep track of number of results returned
        int rslCnt = 0;
        
        //get follower names
        try {
        	//add followers' names to list model
			while (rs.next()) {
				listModel.addElement(rs.getString("name"));
				rslCnt++;
			}
		} catch (SQLException e) {
			// TODO suppress stack trace
			e.printStackTrace();
		}
         
        //Create the list
        list = new JList(listModel);
        
        //only allow one follower to be selected at a time
        list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
        
        //setup listener for when a list item is selected
        list.addListSelectionListener(this);
        
        //show five rows of followers, scroll through rest
        list.setVisibleRowCount(5);
        
        //create pane for list
        JScrollPane listScrollPane = new JScrollPane(list);
        
        //if at least one follower was returned
        if (rslCnt > 0) {
	        //add buttons based on whether we're getting followers or requested followers
	        if (confirmedVal) {
	        	//create button to revoke follow permission from follower
		        denyButton = new JButton(REVOKE_STRING);
		        denyButton.setActionCommand(REVOKE_STRING);
		        denyButton.addActionListener(new DenyListener());
	        } else {
	        	//add approve + deny follow request buttons
	        	denyButton = new JButton(DENY_STRING);
		        denyButton.setActionCommand(DENY_STRING);
		        denyButton.addActionListener(new DenyListener());
		        approveButton = new JButton(APPROVE_STRING);
		        approveButton.setActionCommand(APPROVE_STRING);
		        approveButton.addActionListener(new ApproveListener());
		        
	        }
	        //TODO: implement followback
	        /*
	        followBackButton = new JButton(FOLLOW_BACK_STRING);
	        followBackButton.setActionCommand(FOLLOW_BACK_STRING);
	        followBackButton.addActionListener(new FollowBackListener());
	        */
        }
       
        //Create a panel that uses BoxLayout.
        JPanel buttonPane = new JPanel();
        buttonPane.setLayout(new BoxLayout(buttonPane, BoxLayout.LINE_AXIS));
        
        buttonPane.add(Box.createHorizontalStrut(5));
        
        //set border
        buttonPane.setBorder(BorderFactory.createEmptyBorder(5,5,5,5));
        
        //add button(s) if at least one result was returned
        if (rslCnt > 0) {
        	//if we're dealing with follow requests, add the approve button
	        if (!confirmedVal) {
	        	buttonPane.add(approveButton);
	    	}
	        
	        //add the revoke/deny button
	        buttonPane.add(denyButton);
	        
	        //TODO: followback not yet implemented
	        //buttonPane.add(followBackButton);
        }
 
        add(listScrollPane, BorderLayout.CENTER);
        add(buttonPane, BorderLayout.PAGE_END);
    }