4Misc_Start<#4PlatformžÁ@9èVersionCheckè ¬xHHô@îÿîÿRg(üšHHdh ¬xHHô@îÿîÿRg(üšHHdh ¬x HHddg(üšHHdh ^Graph*Ù™WDashSettings#úÿ  !4 4 4 4 4 4 phome<<dÿÿÿÿhd:Old Stuff:2023:2023-08-30:6RecentWindows3D Graphics.ihfAdvanced Topics.ihfAnalysis of Functions.ihfAnalysis.ihfAnnotations.ihfCategory Plots.ihfCommands.ihfContour Plots.ihfControls.ihfCurve Fitting.ihfData Folders.ihfDebugging.ihfDemoLoader.ipfDemoPanelDemoTable:Igor Reference.ihf 4Misc_End<#”XOPState_Start`<#SQL6420Stuff/2023/2023-08-30/VISA64lysis of Fucton.ifXTest3-64Annotations.ihfXTestStructs64ommands.ihfXTest7-64hfControls.ihfP`WaveRefTest-64a Folders.ihfVDT2-64hfDemoLoader.ipfXOP1-64Çl¹Å=€ÿÿZTUMZTUMXTest2-64TGf@NetCDF64×+$üNIGPIB2-644XOPState_End<# V_Flagð?S_waveNames Iô†ÿ²ywave0;S_pathames Iô†ÿ²yS_fileName Iô†ÿ²y Clipboard8•DemoTableWindowHook() •DemoTableSubWindowHook() !*|// Platform=Macintosh, IGORVersion=9.020, architecture=Intel, systemTextEncoding="MacRoman", historyTextEncoding="UTF-8", procwinTextEncoding="UTF-8", recreationTextEncoding="UTF-8", build=39337 #pragma TextEncoding = "UTF-8" Silent 101 // use | as bitwise or -- not comment. DefaultFont "Helvetica" MoveWindow/P 201,50,1061,940 DemoTable() DemoPanel() MoveWindow/C 4,785,1211,1022 KillStrings/Z root:gWMSetNextTextFilesTextEncoding Window DemoPanel() : Panel PauseUpdate; Silent 1 // building window... NewPanel /W=(369,49,669,249) SetWindow kwTopWin,hook(MyHook)=TableSubWindowHook Edit/W=(36,36,324,215)/HOST=# ModifyTable format=1 RenameWindow #,TableSubwindow SetActiveSubwindow ## EndMacro Window DemoTable() : Table PauseUpdate; Silent 1 // building window... Edit/W=(17,49,346,241) ModifyTable format=1 SetWindow kwTopWin,hook(MyHook)=TableWindowHook EndMacro Í#pragma TextEncoding = "UTF-8" #pragma rtGlobals=3 // Use modern global access method and strict wave access #pragma DefaultTab={3,20,4} // Set default tab width in Igor Pro 9 and later Function TableWindowHook(s) STRUCT WMWinHookStruct &s Variable hookResult = 0 // 0 if we do not handle event, 1 if we handle it. switch(s.eventCode) case 3: Printf "%s Mouse down\r", s.winName hookResult = 1 break case 4: // Printf "%s Mouse move\r", s.winName hookResult = 1 break case 5: Printf "%s Mouse up\r", s.winName hookResult = 1 break endswitch return hookResult // If non-zero, we handled event and Igor will ignore it. End Function DemoTableWindowHook() DoWindow/F DemoTable // Does table exist? if (V_flag == 0) Edit /N=DemoTable // Create table SetWindow DemoTable, hook(MyHook) = TableWindowHook // Install window hook endif End Function TableSubWindowHook(s) STRUCT WMWinHookStruct &s if (CmpStr(s.winName,"DemoPanel#TableSubwindow") != 0) return 1 // Event not in table subwindow endif Variable hookResult = 0 // 0 if we do not handle event, 1 if we handle it. switch(s.eventCode) case 3: Printf "%s Mouse down\r", s.winName hookResult = 1 break case 4: // Printf "%s Mouse move\r", s.winName hookResult = 1 break case 5: Printf "%s Mouse up\r", s.winName hookResult = 1 break endswitch return hookResult // If non-zero, we handled event and Igor will ignore it. End Function DemoTableSubWindowHook() DoWindow/F DemoPanel // Does panel exist? if (V_flag == 0) NewPanel /N=DemoPanel // Create panel Edit/HOST=#/N=TableSubwindow SetWindow DemoPanel, hook(MyHook) = TableSubWindowHook // Install window hook endif End