Direction Loader using Keys - glScalef

I have a small problem (its a bit difficult to explain so i have added some pictures too)

The problem is that when i click the left key on the keyboard the red loader is mean to decrease and stay in the same position.

The only problem is that it does decrease (get smaller) but loader moves out of the loader barrier I am not sure why this is, please help.

glPushMatrix();
glTranslatef(0, 0, 320);
directionIndicator();

if (ballXpos == 40.0)
    glScalef(1.0, 1.0, 1.0);

if (ballXpos < 10.0)
    glScalef(0.75, 1.0, 1.0);

//etc

directionLoader();
glPopMatrix();

I have also uploaded pictures

[ATTACH=CONFIG]339[/ATTACH] [ATTACH=CONFIG]340[/ATTACH] [ATTACH=CONFIG]341[/ATTACH]

Thanks in advance

Try scaling before you translate. You normally want scaling to occur in object space (ie with the object at the origin).