oui ce ne sont pas dans les labels qu'il faut faire des tests mais dans le corps des cases...
edit : je suis pas sûr de pas m'être embrouillé dans ce que j'écrivais
je réessaye par exemple :
short vertical = CALCULATOR;
switch (machin) {
case 337: vertical = !vertical;
case 338: if (vertical) /* up */ else /* left */ break;
case 340: vertical = !vertical;
case 344: if (vertical) /* down */ else /* right */ break;
}