int Move_StrechSymbolsHoriVerti(int ShiftAmount, Boolean IsHorizontal) { int NewX = 0, NewY = 0; unsigned int j; for(j = 1; j < NumObjects; j++) { if(NumConnection) { switch(Objects) { case 1: if(IsHorizontal) { NewX = [j].XCoordinate + ShiftAmount; NewY = [j].YCoordinate; [j].XCoordinate = NewX; } else { YCoordinate += ShiftAmount; NewX = [j].XCoordinate; } break; case 2: if(IsHorizontal) { NewX = [j].XCoordinate - ShiftAmount; NewY = [j].YCoordinate; XCoordinate = NewX; } else { NewY = [j].YCoordinate - ShiftAmount; NewX = [j].XCoordinate; YCoordinate = NewY; } break; case 3: if(IsHorizontal) { NewX = [j].XCoordinate + ShiftAmount/2; NewY = [j].YCoordinate; XCoordinate = NewX; } else { NewY = [j].YCoordinate + ShiftAmount/2; NewX = [j].XCoordinate; YCoordinate = NewY; } ObjectRadius = ObjectRadius + ShiftAmount; break; case 4: if(IsHorizontal) { NewX = [j].XCoordinate - ShiftAmount/2; NewY = [j].YCoordinate; XCoordinate = NewX; } else { NewY = [j].YCoordinate - ShiftAmount/2; NewX = [j].XCoordinate; YCoordinate = NewY; } ObjectRadius = ObjectRadius + ShiftAmount; break; case 5: if(IsHorizontal) { NewX = [j].XCoordinate - ShiftAmount/2; NewY = [j].YCoordinate; XCoordinate = NewX; } else { NewY = [j].YCoordinate - ShiftAmount/2; NewX = [j].XCoordinate; [j].YCoordinate = NewY; } [j].ObjectRadius = [j].ObjectRadius - ShiftAmount; break; case 6: if(IsHorizontal) { NewX = [j].XCoordinate + ShiftAmount/2; NewY = [j].YCoordinate; XCoordinate = NewX; } else { NewY = Objects[j].YCoordinate + ShiftAmount/2; NewX = Objects[j].XCoordinate; YCoordinate = NewY; } ObjectRadius = ObjectRadius - ShiftAmount; break; } } NumConnection = 0; Active = False; } return(0); }