@Override
    public void draw() {
        glBegin(GL_QUAD_STRIP);
        for(int i = 0; i < locations.length; i++){
            colors[i].bind();
            glVertex2f(locations[i] * width, 0);
            glVertex2f(locations[i] * width, height);
        }
        glEnd();
        // border
        glColor3f(0.3f,0.3f,0.3f);
        glBegin(GL_LINE_STRIP);
            glVertex2f(0, 0);
            glVertex2f(width, 0);
            glVertex2f(width, height);
            glVertex2f(0, height);
        glEnd();
        if(leftLabel != null)
            TextRenderHelper.drawString(0, height, leftLabel);
        if(middleLabel != null)
            TextRenderHelper.drawString(width/2 - middleLabelWidth/2, height, middleLabel);
        if(rightLabel != null)
            TextRenderHelper.drawString(width - rightLabelWidth, height, rightLabel);
    }