Nothing mysterious, only the text extents have to be recalculated because text cant be zoomed.
«*»= char zoomlabel[3];
static void SetZoom(int factor) FormPtr frm; ControlPtr zl;
frm = FrmGetActiveForm(); zl=GetObjectPtr(frm,MagLabel);
StrIToA(zoomlabel,(Long)factor); CtlSetLabel(zl,zoomlabel);
void ZoomOut() if(currentSection->si.scale>1) currentSection->si.scale–; SetZoom(currentSection->si.scale); RecalcTextExtents(currentSection);
void ZoomIn() currentSection->si.scale++; SetZoom(currentSection->si.scale); RecalcTextExtents(currentSection); @