/* Install the cross call procedures in the gCrossCallProcedureTable of cCrossCall_121. */ OS InstallCrossCallMenus (OS ios) { CrossCallProcedureTable newTable; printf("InstallCrossCallMenus\n"); newTable = EmptyCrossCallProcedureTable (); AddCrossCallEntry (newTable, CcRqADDMENUSHORTKEY, EvalCcRqADDMENUSHORTKEY); AddCrossCallEntry (newTable, CcRqREMOVEMENUSHORTKEY, EvalCcRqREMOVEMENUSHORTKEY); AddCrossCallEntry (newTable, CcRqMODIFYMENUITEM, EvalCcRqMODIFYMENUITEM); AddCrossCallEntry (newTable, CcRqINSERTMENUITEM, EvalCcRqINSERTMENUITEM); AddCrossCallEntry (newTable, CcRqITEMENABLE, EvalCcRqITEMENABLE); AddCrossCallEntry (newTable, CcRqDELETEMENU, EvalCcRqDELETEMENU); AddCrossCallEntry (newTable, CcRqDESTROYMENU, EvalCcRqDESTROYMENU); AddCrossCallEntry (newTable, CcRqREMOVEMENUITEM, EvalCcRqREMOVEMENUITEM); AddCrossCallEntry (newTable, CcRqINSERTSEPARATOR, EvalCcRqINSERTSEPARATOR); AddCrossCallEntry (newTable, CcRqMODIFYMENU, EvalCcRqMODIFYMENU); AddCrossCallEntry (newTable, CcRqINSERTMENU, EvalCcRqINSERTMENU); AddCrossCallEntry (newTable, CcRqMENUENABLE, EvalCcRqMENUENABLE); AddCrossCallEntry (newTable, CcRqDRAWMBAR, EvalCcRqDRAWMBAR); AddCrossCallEntry (newTable, CcRqTRACKPOPMENU, EvalCcRqTRACKPOPMENU); AddCrossCallEntry (newTable, CcRqCREATEPOPMENU, EvalCcRqCREATEPOPMENU); AddCrossCallEntry (newTable, CcRqCHECKMENUITEM, EvalCcRqCHECKMENUITEM); AddCrossCallEntries (gCrossCallProcedureTable, newTable); return ios; }
// InstallCrossCallFont adds the proper cross call procedures to the // cross call procedures managed by cCrossCall_121.c. void InstallCrossCallFont () { CrossCallProcedureTable newTable; newTable = EmptyCrossCallProcedureTable (); AddCrossCallEntry (newTable, CcRqGETFONTNAMES,EvalCcRqGETFONTNAMES); AddCrossCallEntry (newTable, CcRqGETFONTSIZES,EvalCcRqGETFONTSIZES); AddCrossCallEntries (gCrossCallProcedureTable, newTable); }
/* Install the cross call procedures in the gCrossCallProcedureTable of cCrossCall_121. */ void InstallCrossCallClipboard () { CrossCallProcedureTable newTable; newTable = EmptyCrossCallProcedureTable (); AddCrossCallEntry (newTable, CcRqCLIPBOARDHASTEXT, EvalCcRqCLIPBOARDHASTEXT); AddCrossCallEntry (newTable, CcRqSETCLIPBOARDTEXT, EvalCcRqSETCLIPBOARDTEXT); AddCrossCallEntry (newTable, CcRqGETCLIPBOARDTEXT, EvalCcRqGETCLIPBOARDTEXT); AddCrossCallEntries (gCrossCallProcedureTable, newTable); }
/* InitGlobals is used by WinStartOSThread only. */ static void InitGlobals (void) { LOGFONT lf; // Globally, we create a logical font that is used in all controls. SetLogFontData (&lf, "MS Sans Serif", 0, 8); gControlFont = CreateFontIndirect (&lf); // The cross call procedure table is set to the empty table. gCrossCallProcedureTable = EmptyCrossCallProcedureTable (); } /* InitGlobals */
/* Install the cross call procedures in the gCrossCallProcedureTable of cCrossCall_121. */ OS InstallCrossCallClipboard (OS ios) { CrossCallProcedureTable newTable; printf("InstallCrossCallClipboard\n"); newTable = EmptyCrossCallProcedureTable (); AddCrossCallEntry (newTable, CcRqCLIPBOARDHASTEXT, EvalCcRqCLIPBOARDHASTEXT); AddCrossCallEntry (newTable, CcRqSETCLIPBOARDTEXT, EvalCcRqSETCLIPBOARDTEXT); AddCrossCallEntry (newTable, CcRqGETCLIPBOARDTEXT, EvalCcRqGETCLIPBOARDTEXT); AddCrossCallEntry (newTable, CcRqGETCLIPBOARDCOUNT, EvalCcRqGETCLIPBOARDCOUNT); AddCrossCallEntries (gCrossCallProcedureTable, newTable); return ios; }