@Override
		public void draw(Graphics2D g,float interpol) {
//			if (position == null)
//				updateDimsandPositions();
			//Profiler.start();
			g.setColor(Color.WHITE);
			g.setFont(getFont());
			if (!isTextDetermined) {
				updateTextPosition(g.getFontMetrics());
				isTextDetermined = true;
			}
			//Profiler.lapRestart("Intialize");
			
			g.setColor((isPressed)?Parameters.ACCENT_COLOR:Color.BLACK);
			g.fillRect((int)position.x, (int)position.y, dims.width, dims.height);
			//Profiler.lapRestart("Draw Fill");
			
			g.setColor(Parameters.ACCENT_COLOR);
			g.drawRect((int)position.x, (int)position.y, dims.width, dims.height);
			//Profiler.lapRestart("Draw Border");
			
			g.setColor((isPressed)?Color.BLACK:Color.WHITE);
			g.drawString(text,textPosition.x,textPosition.y);
			//Profiler.lapRestart("Draw String");
		}