#pragma noroot#include "defines.h"#include #include #include extern int LowFret;extern int HiFret;extern int Capo;extern int strcount;extern int strings[6][13];extern int stringsSTD[6];extern WindowPtr OptionWinPtr;void MoveCapo (void){ int i, j, k, temp, temp2; for (i = 0; i < strcount; i++) { temp = stringsSTD[i]; for (j = 0; j < 12; j++) { temp2 = temp; for (k = 0; k < Capo; k++) { temp2 = temp2 << 1; if (temp2 == Ab * 2) temp2 = 1; } strings[i][j] = temp2; temp = temp << 1; if (temp == Ab * 2) temp = 1; } }}void AdjustControls (void){ int i; /* make sure the controls are visible */ for (i = 0; i < strcount; i++) ShowControl (GetCtlHandleFromID (OptionWinPtr, k6th_PopUp - i)); for (; i < 6; i++) HideControl (GetCtlHandleFromID (OptionWinPtr, k6th_PopUp - i));}/* Handle controls */int DoControls (word ControlID, long ControlPtr){ int value; value = GetCtlValue ((CtlRecHndl) (ControlPtr)); if (ControlID == kCommentField) return 0; switch (ControlID) { case kCapo_PopUp: Capo = value - k0Capo; break; case kStr_PopUp: strcount = value - kStr_PopUp; AdjustControls (); break; case kChords_Button: DoChords (); return 0; /* kludge */ break; case kScales_Button: DoScales (); return 0; /* kludge */ break; case kHiFret_PopUp: HiFret = value - kLowFret_PopUp; break; case kLowFret_PopUp: LowFret = value - kLowFret_PopUp - 1; break; case k6th_PopUp: stringsSTD[0] = (1 << value - KeyBase); break; case k5th_PopUp: stringsSTD[1] = (1 << value - KeyBase); break; case k4th_PopUp: stringsSTD[2] = (1 << value - KeyBase); break; case k3rd_PopUp: stringsSTD[3] = (1 << value - KeyBase); break; case k2nd_PopUp: stringsSTD[4] = (1 << value - KeyBase); break; case k1st_PopUp: stringsSTD[5] = (1 << value - KeyBase); break; default: ; } MoveCapo (); return 1;}void SetControls (void){/* set all the controls */ int i; int j; SetCtlValue (Capo + k0Capo, GetCtlHandleFromID (OptionWinPtr, kCapo_PopUp)); for (i = 0; i < 6; i++) { for (j = 0; j < 12; j++) if (stringsSTD[i] == (1 << j)) break; SetCtlValue (j + KeyBase, GetCtlHandleFromID (OptionWinPtr, k6th_PopUp - i)); } AdjustControls ();}