private void initGUI() {
		setFocusable(true);
		this.setBorder(null);
		
		MouseAdapter mouseListener = new MouseAdapter() {
            @Override
            public void mouseEntered(java.awt.event.MouseEvent evt) {
            	mouseIsOverButton = true;
            	setBackground();
            }

            @Override
            public void mouseExited(java.awt.event.MouseEvent evt) {
            	mouseIsOverButton = false;
            	setBackground();
            }
            
            @Override
            public void mousePressed(java.awt.event.MouseEvent evt) {
            	if (SwingUtilities.isLeftMouseButton(evt)) {
            		mouseIsDown = true;
            		setBackground();
            	}
            }
            
            @Override
            public void mouseReleased(java.awt.event.MouseEvent evt) {
            	mouseIsDown = false;
            	if (!isEnabled() || !SwingUtilities.isLeftMouseButton(evt)) return;
            	if (mouseIsOverButton) fireActionPerformed(new ActionEvent(JdotxtImageButton.this, ActionEvent.ACTION_PERFORMED, "Click"));
            	setBackground();
            }
        };
        addMouseListener(mouseListener);
        
        FocusListener focusListener = new FocusListener() {
			@Override
			public void focusLost(FocusEvent arg0) {
				focused = false;
				setBackground();
			}
			
			@Override
			public void focusGained(FocusEvent arg0) {
				focused = true;
				setBackground();
			}
		};
		addFocusListener(focusListener);
		
		KeyListener keyListener = new KeyListener() {
			
			@Override
			public void keyTyped(KeyEvent e) {
			}
			
			@Override
			public void keyReleased(KeyEvent e) {
				if (e.getKeyCode() == KeyEvent.VK_ENTER || e.getKeyCode() == KeyEvent.VK_SPACE) {
					keyIsPressed = false;
					setBackground();
					fireActionPerformed(new ActionEvent(JdotxtImageButton.this, ActionEvent.ACTION_PERFORMED, "Click"));
				}
			}
			
			@Override
			public void keyPressed(KeyEvent e) {
				if (e.getKeyCode() == KeyEvent.VK_ENTER || e.getKeyCode() == KeyEvent.VK_SPACE) {
					keyIsPressed = true;
					setBackground();
				}
			}
		};
		addKeyListener(keyListener);
	}