Index: trunk/SophyaPI/PI/Quartz/PI.xcodeproj/project.pbxproj
===================================================================
--- trunk/SophyaPI/PI/Quartz/PI.xcodeproj/project.pbxproj	(revision 3486)
+++ trunk/SophyaPI/PI/Quartz/PI.xcodeproj/project.pbxproj	(revision 3747)
@@ -271,21 +271,18 @@
 		6D0E25210665E286009E5976 /* picontainergen.h in Headers */ = {isa = PBXBuildFile; fileRef = 6D526BFA06624512009E5976 /* picontainergen.h */; };
 		6D0E25220665E287009E5976 /* picontainergen.cc in Sources */ = {isa = PBXBuildFile; fileRef = 6D526BF706624488009E5976 /* picontainergen.cc */; };
-		6D0E25240665E29E009E5976 /* piwdgmosx.h in Headers */ = {isa = PBXBuildFile; fileRef = 6D189BFE0619C1F5009E5976 /* piwdgmosx.h */; };
+		6D0E25240665E29E009E5976 /* piwdgquartz.h in Headers */ = {isa = PBXBuildFile; fileRef = 6D189BFE0619C1F5009E5976 /* piwdgquartz.h */; };
 		6D0E25250665E29F009E5976 /* piwdggen.h in Headers */ = {isa = PBXBuildFile; fileRef = 6D526C000662461A009E5976 /* piwdggen.h */; };
-		6D0E25260665E2A9009E5976 /* piwdgmosx.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D189BFF0619C1F5009E5976 /* piwdgmosx.cpp */; };
+		6D0E25260665E2A9009E5976 /* piwdgquartz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D189BFF0619C1F5009E5976 /* piwdgquartz.cpp */; };
 		6D0E25270665E2A9009E5976 /* piwdggen.cc in Sources */ = {isa = PBXBuildFile; fileRef = 6D526C0606624678009E5976 /* piwdggen.cc */; };
 		6D0E25280665E337009E5976 /* pievthandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 6D526C0A066246A9009E5976 /* pievthandler.h */; };
 		6D0E25290665E337009E5976 /* PIWindowQuartz.h in Headers */ = {isa = PBXBuildFile; fileRef = 6D98FCF4062C1CDB009E5976 /* PIWindowQuartz.h */; };
-		6D0E252A0665E338009E5976 /* PIControl.h in Headers */ = {isa = PBXBuildFile; fileRef = 6D8292EC0623F784009E5976 /* PIControl.h */; };
 		6D0E252B0665E338009E5976 /* PIContainerQuartz.h in Headers */ = {isa = PBXBuildFile; fileRef = 6D41F30A064771A8009E5976 /* PIContainerQuartz.h */; };
 		6D0E252C0665E33A009E5976 /* PIContainerQuartz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D41F30B064771A8009E5976 /* PIContainerQuartz.cpp */; };
 		6D0E252D0665E33A009E5976 /* pievthandler.cc in Sources */ = {isa = PBXBuildFile; fileRef = 6D526C0806624689009E5976 /* pievthandler.cc */; };
 		6D0E252E0665E33B009E5976 /* PIWindowQuartz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D98FCF5062C1CDB009E5976 /* PIWindowQuartz.cpp */; };
-		6D0E252F0665E33B009E5976 /* PIControl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D8292ED0623F784009E5976 /* PIControl.cpp */; };
 		6D0E253006661DC2009E5976 /* piwindowgen.h in Headers */ = {isa = PBXBuildFile; fileRef = 6DDB77E80663268E009E5976 /* piwindowgen.h */; };
 		6D0E253106661DC4009E5976 /* piwindowgen.cc in Sources */ = {isa = PBXBuildFile; fileRef = 6DDB77E90663268E009E5976 /* piwindowgen.cc */; };
 		6D106880067DC9B3009E5976 /* QuartzAppTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D106876067DC8FC009E5976 /* QuartzAppTest.cpp */; };
 		6D106881067DC9B6009E5976 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08FB77AAFE841565C02AAC07 /* Carbon.framework */; };
-		6D622CEA0D8ED11400428D9A /* BaoAdc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D622CE80D8ED11400428D9A /* BaoAdc.cpp */; };
 		6D622CF60D8ED19100428D9A /* PI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 034768DEFF38A45A11DB9C8B /* PI.framework */; };
 		6D6F12710D6446D500583608 /* machdefs.h in Headers */ = {isa = PBXBuildFile; fileRef = 6D6F12700D6446D500583608 /* machdefs.h */; };
@@ -325,7 +322,15 @@
 		6D7D4E5806673450009E5976 /* PIMenuQuartz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D7D4E5606673450009E5976 /* PIMenuQuartz.cpp */; };
 		6DBF802306D0A01F009E5976 /* PI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 034768DEFF38A45A11DB9C8B /* PI.framework */; };
+		6DE18B860E837AD800414227 /* pioptmenuquartz.h in Headers */ = {isa = PBXBuildFile; fileRef = 6DE18B840E837AD800414227 /* pioptmenuquartz.h */; };
+		6DE18B870E837AD800414227 /* pioptmenuquartz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6DE18B850E837AD800414227 /* pioptmenuquartz.cpp */; };
+		6DE18BF80E83E4FE00414227 /* pidrwtools.cc in Sources */ = {isa = PBXBuildFile; fileRef = 6DE18BF60E83E4FE00414227 /* pidrwtools.cc */; };
+		6DE18BF90E83E4FE00414227 /* pidrwtools.h in Headers */ = {isa = PBXBuildFile; fileRef = 6DE18BF70E83E4FE00414227 /* pidrwtools.h */; };
+		6DE18C1A0E83E91700414227 /* pibwdgquartz.h in Headers */ = {isa = PBXBuildFile; fileRef = 6DE18C180E83E91700414227 /* pibwdgquartz.h */; };
+		6DE18C1B0E83E91700414227 /* pibwdgquartz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6DE18C190E83E91700414227 /* pibwdgquartz.cpp */; };
 		6DE745E60C7C4F530051D656 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08FB77AAFE841565C02AAC07 /* Carbon.framework */; };
 		6DE745E70C7C4F530051D656 /* PI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 034768DEFF38A45A11DB9C8B /* PI.framework */; };
 		6DE745F00C7C4F720051D656 /* xp0.cc in Sources */ = {isa = PBXBuildFile; fileRef = 6DE7443F0C7C2E390051D656 /* xp0.cc */; };
+		6DE8E8160E87BA6D0031A5D9 /* pigraphps.cc in Sources */ = {isa = PBXBuildFile; fileRef = 6DE8E8130E87BA6D0031A5D9 /* pigraphps.cc */; };
+		6DE8E8170E87BA6D0031A5D9 /* pigraphps.h in Headers */ = {isa = PBXBuildFile; fileRef = 6DE8E8140E87BA6D0031A5D9 /* pigraphps.h */; };
 		6DEA07D90C88612B0016C028 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08FB77AAFE841565C02AAC07 /* Carbon.framework */; };
 		6DEA07DA0C88612B0016C028 /* PI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 034768DEFF38A45A11DB9C8B /* PI.framework */; };
@@ -335,13 +340,21 @@
 		6DEA82D00C7EDF5700B7D5DD /* pistdwdggen.cc in Sources */ = {isa = PBXBuildFile; fileRef = 6DDB77E30663266A009E5976 /* pistdwdggen.cc */; };
 		6DEA82D10C7EDF5B00B7D5DD /* pistdwdggen.h in Headers */ = {isa = PBXBuildFile; fileRef = 6DDB77E20663266A009E5976 /* pistdwdggen.h */; };
-		6DEA831F0C7F162300B7D5DD /* pistdwdgmosx.h in Headers */ = {isa = PBXBuildFile; fileRef = 6DEA831E0C7F162300B7D5DD /* pistdwdgmosx.h */; };
-		6DEA83230C7F166500B7D5DD /* pistdwdgmosx.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6DEA83220C7F166500B7D5DD /* pistdwdgmosx.cpp */; };
-		6DED33260DADE70C00A2F30F /* SPIWindow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6DED33250DADE70C00A2F30F /* SPIWindow.cpp */; };
-		6DED34040DAE002100A2F30F /* SIPllWindow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6DED34030DAE002100A2F30F /* SIPllWindow.cpp */; };
-		6DED34880DAE115500A2F30F /* MixReg.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6DED34870DAE115500A2F30F /* MixReg.cpp */; };
-		6DED34DB0DAE15B200A2F30F /* ADCWindow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6DED34DA0DAE15B200A2F30F /* ADCWindow.cpp */; };
-		6DED73910D8FA59000D85368 /* RegisterWindow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6DED73900D8FA59000D85368 /* RegisterWindow.cpp */; };
+		6DEA831F0C7F162300B7D5DD /* pistdwdgquartz.h in Headers */ = {isa = PBXBuildFile; fileRef = 6DEA831E0C7F162300B7D5DD /* pistdwdgquartz.h */; };
+		6DEA83230C7F166500B7D5DD /* pistdwdgquartz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6DEA83220C7F166500B7D5DD /* pistdwdgquartz.cpp */; };
 		6DF012F60CBF6A510026E580 /* PIPeriodQuartz.h in Headers */ = {isa = PBXBuildFile; fileRef = 6DF012F40CBF6A510026E580 /* PIPeriodQuartz.h */; };
 		6DF012F70CBF6A510026E580 /* PIPeriodQuartz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6DF012F50CBF6A510026E580 /* PIPeriodQuartz.cpp */; };
+		6DF26D1A0E7FB7EC001AE7EF /* pibwdggen.cc in Sources */ = {isa = PBXBuildFile; fileRef = 6DF26D160E7FB7EC001AE7EF /* pibwdggen.cc */; };
+		6DF26D1B0E7FB7EC001AE7EF /* pibwdggen.h in Headers */ = {isa = PBXBuildFile; fileRef = 6DF26D170E7FB7EC001AE7EF /* pibwdggen.h */; };
+		6DF26D1C0E7FB7EC001AE7EF /* pidrawer.cc in Sources */ = {isa = PBXBuildFile; fileRef = 6DF26D180E7FB7EC001AE7EF /* pidrawer.cc */; };
+		6DF26D1D0E7FB7EC001AE7EF /* pidrawer.h in Headers */ = {isa = PBXBuildFile; fileRef = 6DF26D190E7FB7EC001AE7EF /* pidrawer.h */; };
+		6DF26D240E7FB84E001AE7EF /* piaxes.cc in Sources */ = {isa = PBXBuildFile; fileRef = 6DF26D1E0E7FB84E001AE7EF /* piaxes.cc */; };
+		6DF26D250E7FB84E001AE7EF /* piaxes.h in Headers */ = {isa = PBXBuildFile; fileRef = 6DF26D1F0E7FB84E001AE7EF /* piaxes.h */; };
+		6DF26D260E7FB84E001AE7EF /* pigraphgen.h in Headers */ = {isa = PBXBuildFile; fileRef = 6DF26D200E7FB84E001AE7EF /* pigraphgen.h */; };
+		6DF26D270E7FB84E001AE7EF /* pigraphuc.cc in Sources */ = {isa = PBXBuildFile; fileRef = 6DF26D210E7FB84E001AE7EF /* pigraphuc.cc */; };
+		6DF26D280E7FB84E001AE7EF /* pigraphuc.h in Headers */ = {isa = PBXBuildFile; fileRef = 6DF26D220E7FB84E001AE7EF /* pigraphuc.h */; };
+		6DF26D290E7FB84E001AE7EF /* psfile.h in Headers */ = {isa = PBXBuildFile; fileRef = 6DF26D230E7FB84E001AE7EF /* psfile.h */; };
+		6DF26D2B0E7FDF45001AE7EF /* ucckprot.h in Headers */ = {isa = PBXBuildFile; fileRef = 6DF26D2A0E7FDF45001AE7EF /* ucckprot.h */; };
+		6DF26D500E7FED78001AE7EF /* pioptmenugen.cc in Sources */ = {isa = PBXBuildFile; fileRef = 6DF26D4E0E7FED78001AE7EF /* pioptmenugen.cc */; };
+		6DF26D510E7FED78001AE7EF /* pioptmenugen.h in Headers */ = {isa = PBXBuildFile; fileRef = 6DF26D4F0E7FED78001AE7EF /* pioptmenugen.h */; };
 		6DF7756D0CC3A8DA00D784C9 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6DF7756C0CC3A8DA00D784C9 /* CoreFoundation.framework */; };
 		6DFD5AD206773E42009E5976 /* piapplgen.h in Headers */ = {isa = PBXBuildFile; fileRef = 6DDB77DD06632616009E5976 /* piapplgen.h */; };
@@ -384,6 +397,6 @@
 		6D106876067DC8FC009E5976 /* QuartzAppTest.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; path = QuartzAppTest.cpp; sourceTree = SOURCE_ROOT; };
 		6D10687E067DC9AB009E5976 /* PIAQTest.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; path = PIAQTest.app; sourceTree = BUILT_PRODUCTS_DIR; };
-		6D189BFE0619C1F5009E5976 /* piwdgmosx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = piwdgmosx.h; sourceTree = SOURCE_ROOT; };
-		6D189BFF0619C1F5009E5976 /* piwdgmosx.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = piwdgmosx.cpp; sourceTree = SOURCE_ROOT; };
+		6D189BFE0619C1F5009E5976 /* piwdgquartz.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = piwdgquartz.h; sourceTree = "<group>"; };
+		6D189BFF0619C1F5009E5976 /* piwdgquartz.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = piwdgquartz.cpp; sourceTree = "<group>"; };
 		6D41F30A064771A8009E5976 /* PIContainerQuartz.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PIContainerQuartz.h; sourceTree = SOURCE_ROOT; };
 		6D41F30B064771A8009E5976 /* PIContainerQuartz.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PIContainerQuartz.cpp; sourceTree = SOURCE_ROOT; };
@@ -398,6 +411,4 @@
 		6D622CD60D8ECB6300428D9A /* BaoAdc.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = BaoAdc.app; sourceTree = BUILT_PRODUCTS_DIR; };
 		6D622CD80D8ECB6300428D9A /* BaoAdc-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = "BaoAdc-Info.plist"; sourceTree = "<group>"; };
-		6D622CE80D8ED11400428D9A /* BaoAdc.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = BaoAdc.cpp; path = ../../../BAO/BaoAdc.cpp; sourceTree = SOURCE_ROOT; };
-		6D622CE90D8ED11400428D9A /* BaoAdc.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = BaoAdc.h; path = ../../../BAO/BaoAdc.h; sourceTree = SOURCE_ROOT; };
 		6D6F12700D6446D500583608 /* machdefs.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = machdefs.h; sourceTree = "<group>"; };
 		6D6F12990D6448E500583608 /* sopnamsp.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = sopnamsp.h; sourceTree = "<group>"; };
@@ -431,6 +442,4 @@
 		6D7D4E5506673450009E5976 /* PIMenuQuartz.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PIMenuQuartz.h; sourceTree = SOURCE_ROOT; };
 		6D7D4E5606673450009E5976 /* PIMenuQuartz.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PIMenuQuartz.cpp; sourceTree = SOURCE_ROOT; };
-		6D8292EC0623F784009E5976 /* PIControl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PIControl.h; sourceTree = SOURCE_ROOT; };
-		6D8292ED0623F784009E5976 /* PIControl.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PIControl.cpp; sourceTree = SOURCE_ROOT; };
 		6D98FCF4062C1CDB009E5976 /* PIWindowQuartz.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PIWindowQuartz.h; sourceTree = SOURCE_ROOT; };
 		6D98FCF5062C1CDB009E5976 /* PIWindowQuartz.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PIWindowQuartz.cpp; sourceTree = SOURCE_ROOT; };
@@ -446,24 +455,35 @@
 		6DDB77E80663268E009E5976 /* piwindowgen.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = piwindowgen.h; path = ../piwindowgen.h; sourceTree = SOURCE_ROOT; };
 		6DDB77E90663268E009E5976 /* piwindowgen.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = piwindowgen.cc; path = ../piwindowgen.cc; sourceTree = SOURCE_ROOT; };
+		6DE18B840E837AD800414227 /* pioptmenuquartz.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = pioptmenuquartz.h; sourceTree = "<group>"; };
+		6DE18B850E837AD800414227 /* pioptmenuquartz.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = pioptmenuquartz.cpp; sourceTree = "<group>"; };
+		6DE18BF60E83E4FE00414227 /* pidrwtools.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = pidrwtools.cc; path = ../pidrwtools.cc; sourceTree = SOURCE_ROOT; };
+		6DE18BF70E83E4FE00414227 /* pidrwtools.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = pidrwtools.h; path = ../pidrwtools.h; sourceTree = SOURCE_ROOT; };
+		6DE18C180E83E91700414227 /* pibwdgquartz.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = pibwdgquartz.h; sourceTree = "<group>"; };
+		6DE18C190E83E91700414227 /* pibwdgquartz.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = pibwdgquartz.cpp; sourceTree = "<group>"; };
 		6DE744360C7C2DF40051D656 /* XP0-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = "XP0-Info.plist"; sourceTree = "<group>"; };
 		6DE7443F0C7C2E390051D656 /* xp0.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = xp0.cc; path = ../Tests/xp0.cc; sourceTree = SOURCE_ROOT; };
 		6DE745ED0C7C4F530051D656 /* XP0.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = XP0.app; sourceTree = BUILT_PRODUCTS_DIR; };
+		6DE8E8130E87BA6D0031A5D9 /* pigraphps.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = pigraphps.cc; path = ../pigraphps.cc; sourceTree = SOURCE_ROOT; };
+		6DE8E8140E87BA6D0031A5D9 /* pigraphps.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = pigraphps.h; path = ../pigraphps.h; sourceTree = SOURCE_ROOT; };
 		6DEA07E00C88612B0016C028 /* PIT0.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = PIT0.app; sourceTree = BUILT_PRODUCTS_DIR; };
 		6DEA07E50C8861E90016C028 /* pit0.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = pit0.cc; path = ../Tests/pit0.cc; sourceTree = SOURCE_ROOT; };
 		6DEA82730C7ED3A500B7D5DD /* XP1.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = XP1.app; sourceTree = BUILT_PRODUCTS_DIR; };
-		6DEA831E0C7F162300B7D5DD /* pistdwdgmosx.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = pistdwdgmosx.h; sourceTree = SOURCE_ROOT; };
-		6DEA83220C7F166500B7D5DD /* pistdwdgmosx.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = pistdwdgmosx.cpp; sourceTree = SOURCE_ROOT; };
-		6DED33240DADE70C00A2F30F /* SPIWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SPIWindow.h; path = ../../../BAO/SPIWindow.h; sourceTree = SOURCE_ROOT; };
-		6DED33250DADE70C00A2F30F /* SPIWindow.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SPIWindow.cpp; path = ../../../BAO/SPIWindow.cpp; sourceTree = SOURCE_ROOT; };
-		6DED34020DAE002100A2F30F /* SIPllWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SIPllWindow.h; path = ../../../BAO/SIPllWindow.h; sourceTree = SOURCE_ROOT; };
-		6DED34030DAE002100A2F30F /* SIPllWindow.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SIPllWindow.cpp; path = ../../../BAO/SIPllWindow.cpp; sourceTree = SOURCE_ROOT; };
-		6DED34860DAE115500A2F30F /* MixReg.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MixReg.h; path = ../../../BAO/MixReg.h; sourceTree = SOURCE_ROOT; };
-		6DED34870DAE115500A2F30F /* MixReg.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = MixReg.cpp; path = ../../../BAO/MixReg.cpp; sourceTree = SOURCE_ROOT; };
-		6DED34D90DAE15B200A2F30F /* ADCWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ADCWindow.h; path = ../../../BAO/ADCWindow.h; sourceTree = SOURCE_ROOT; };
-		6DED34DA0DAE15B200A2F30F /* ADCWindow.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ADCWindow.cpp; path = ../../../BAO/ADCWindow.cpp; sourceTree = SOURCE_ROOT; };
-		6DED738F0D8FA59000D85368 /* RegisterWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RegisterWindow.h; path = ../../../BAO/RegisterWindow.h; sourceTree = SOURCE_ROOT; };
-		6DED73900D8FA59000D85368 /* RegisterWindow.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = RegisterWindow.cpp; path = ../../../BAO/RegisterWindow.cpp; sourceTree = SOURCE_ROOT; };
+		6DEA831E0C7F162300B7D5DD /* pistdwdgquartz.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = pistdwdgquartz.h; sourceTree = "<group>"; };
+		6DEA83220C7F166500B7D5DD /* pistdwdgquartz.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = pistdwdgquartz.cpp; sourceTree = "<group>"; };
 		6DF012F40CBF6A510026E580 /* PIPeriodQuartz.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PIPeriodQuartz.h; sourceTree = "<group>"; };
 		6DF012F50CBF6A510026E580 /* PIPeriodQuartz.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PIPeriodQuartz.cpp; sourceTree = "<group>"; };
+		6DF26D160E7FB7EC001AE7EF /* pibwdggen.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = pibwdggen.cc; path = ../pibwdggen.cc; sourceTree = SOURCE_ROOT; };
+		6DF26D170E7FB7EC001AE7EF /* pibwdggen.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = pibwdggen.h; path = ../pibwdggen.h; sourceTree = SOURCE_ROOT; };
+		6DF26D180E7FB7EC001AE7EF /* pidrawer.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = pidrawer.cc; path = ../pidrawer.cc; sourceTree = SOURCE_ROOT; };
+		6DF26D190E7FB7EC001AE7EF /* pidrawer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = pidrawer.h; path = ../pidrawer.h; sourceTree = SOURCE_ROOT; };
+		6DF26D1E0E7FB84E001AE7EF /* piaxes.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = piaxes.cc; path = ../piaxes.cc; sourceTree = SOURCE_ROOT; };
+		6DF26D1F0E7FB84E001AE7EF /* piaxes.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = piaxes.h; path = ../piaxes.h; sourceTree = SOURCE_ROOT; };
+		6DF26D200E7FB84E001AE7EF /* pigraphgen.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = pigraphgen.h; path = ../pigraphgen.h; sourceTree = SOURCE_ROOT; };
+		6DF26D210E7FB84E001AE7EF /* pigraphuc.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = pigraphuc.cc; path = ../pigraphuc.cc; sourceTree = SOURCE_ROOT; };
+		6DF26D220E7FB84E001AE7EF /* pigraphuc.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = pigraphuc.h; path = ../pigraphuc.h; sourceTree = SOURCE_ROOT; };
+		6DF26D230E7FB84E001AE7EF /* psfile.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = psfile.h; path = ../psfile.h; sourceTree = SOURCE_ROOT; };
+		6DF26D2A0E7FDF45001AE7EF /* ucckprot.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = ucckprot.h; path = ../ucckprot.h; sourceTree = SOURCE_ROOT; };
+		6DF26D4E0E7FED78001AE7EF /* pioptmenugen.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = pioptmenugen.cc; path = ../pioptmenugen.cc; sourceTree = SOURCE_ROOT; };
+		6DF26D4F0E7FED78001AE7EF /* pioptmenugen.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = pioptmenugen.h; path = ../pioptmenugen.h; sourceTree = SOURCE_ROOT; };
 		6DF7756C0CC3A8DA00D784C9 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = /System/Library/Frameworks/CoreFoundation.framework; sourceTree = "<absolute>"; };
 		6DFD5AD406774017009E5976 /* PIApplQuartz.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PIApplQuartz.h; sourceTree = SOURCE_ROOT; };
@@ -644,4 +664,21 @@
 			isa = PBXGroup;
 			children = (
+				6DE8E8130E87BA6D0031A5D9 /* pigraphps.cc */,
+				6DE8E8140E87BA6D0031A5D9 /* pigraphps.h */,
+				6DE18BF60E83E4FE00414227 /* pidrwtools.cc */,
+				6DE18BF70E83E4FE00414227 /* pidrwtools.h */,
+				6DF26D4E0E7FED78001AE7EF /* pioptmenugen.cc */,
+				6DF26D4F0E7FED78001AE7EF /* pioptmenugen.h */,
+				6DF26D2A0E7FDF45001AE7EF /* ucckprot.h */,
+				6DF26D1E0E7FB84E001AE7EF /* piaxes.cc */,
+				6DF26D1F0E7FB84E001AE7EF /* piaxes.h */,
+				6DF26D200E7FB84E001AE7EF /* pigraphgen.h */,
+				6DF26D210E7FB84E001AE7EF /* pigraphuc.cc */,
+				6DF26D220E7FB84E001AE7EF /* pigraphuc.h */,
+				6DF26D230E7FB84E001AE7EF /* psfile.h */,
+				6DF26D160E7FB7EC001AE7EF /* pibwdggen.cc */,
+				6DF26D170E7FB7EC001AE7EF /* pibwdggen.h */,
+				6DF26D180E7FB7EC001AE7EF /* pidrawer.cc */,
+				6DF26D190E7FB7EC001AE7EF /* pidrawer.h */,
 				6D6F14100D64611D00583608 /* strutilxx.cc */,
 				6D6F14110D64611D00583608 /* strutilxx.h */,
@@ -691,20 +728,8 @@
 			isa = PBXGroup;
 			children = (
-				6DED34D90DAE15B200A2F30F /* ADCWindow.h */,
-				6DED34DA0DAE15B200A2F30F /* ADCWindow.cpp */,
-				6DED34860DAE115500A2F30F /* MixReg.h */,
-				6DED34870DAE115500A2F30F /* MixReg.cpp */,
-				6DED34020DAE002100A2F30F /* SIPllWindow.h */,
-				6DED34030DAE002100A2F30F /* SIPllWindow.cpp */,
-				6DED738F0D8FA59000D85368 /* RegisterWindow.h */,
-				6DED73900D8FA59000D85368 /* RegisterWindow.cpp */,
-				6D622CE80D8ED11400428D9A /* BaoAdc.cpp */,
-				6D622CE90D8ED11400428D9A /* BaoAdc.h */,
 				6D6F14740D6463FA00583608 /* xp1.cc */,
 				6DEA07E50C8861E90016C028 /* pit0.cc */,
 				6DE7443F0C7C2E390051D656 /* xp0.cc */,
 				6D106876067DC8FC009E5976 /* QuartzAppTest.cpp */,
-				6DED33240DADE70C00A2F30F /* SPIWindow.h */,
-				6DED33250DADE70C00A2F30F /* SPIWindow.cpp */,
 			);
 			name = Main;
@@ -714,4 +739,6 @@
 			isa = PBXGroup;
 			children = (
+				6DE18C180E83E91700414227 /* pibwdgquartz.h */,
+				6DE18B840E837AD800414227 /* pioptmenuquartz.h */,
 				6D6F12F30D644DA100583608 /* pigraphquartz.h */,
 				6D6F134F0D64573200583608 /* picmapquartz.h */,
@@ -721,9 +748,8 @@
 				6D7D4E500667277A009E5976 /* PIMenuBarQuartz.h */,
 				6D41F30A064771A8009E5976 /* PIContainerQuartz.h */,
-				6D8292EC0623F784009E5976 /* PIControl.h */,
 				6DF012F40CBF6A510026E580 /* PIPeriodQuartz.h */,
 				6D98FCF4062C1CDB009E5976 /* PIWindowQuartz.h */,
-				6DEA831E0C7F162300B7D5DD /* pistdwdgmosx.h */,
-				6D189BFE0619C1F5009E5976 /* piwdgmosx.h */,
+				6DEA831E0C7F162300B7D5DD /* pistdwdgquartz.h */,
+				6D189BFE0619C1F5009E5976 /* piwdgquartz.h */,
 			);
 			name = Headers;
@@ -740,9 +766,10 @@
 				6D7D4E5606673450009E5976 /* PIMenuQuartz.cpp */,
 				6D41F30B064771A8009E5976 /* PIContainerQuartz.cpp */,
-				6D189BFF0619C1F5009E5976 /* piwdgmosx.cpp */,
-				6DEA83220C7F166500B7D5DD /* pistdwdgmosx.cpp */,
+				6D189BFF0619C1F5009E5976 /* piwdgquartz.cpp */,
+				6DEA83220C7F166500B7D5DD /* pistdwdgquartz.cpp */,
 				6D98FCF5062C1CDB009E5976 /* PIWindowQuartz.cpp */,
-				6D8292ED0623F784009E5976 /* PIControl.cpp */,
 				6DFD5AD506774017009E5976 /* PIApplQuartz.cpp */,
+				6DE18B850E837AD800414227 /* pioptmenuquartz.cpp */,
+				6DE18C190E83E91700414227 /* pibwdgquartz.cpp */,
 			);
 			name = Specific;
@@ -760,9 +787,8 @@
 				6D0E25200665D8A2009E5976 /* picolist.h in Headers */,
 				6D0E25210665E286009E5976 /* picontainergen.h in Headers */,
-				6D0E25240665E29E009E5976 /* piwdgmosx.h in Headers */,
+				6D0E25240665E29E009E5976 /* piwdgquartz.h in Headers */,
 				6D0E25250665E29F009E5976 /* piwdggen.h in Headers */,
 				6D0E25280665E337009E5976 /* pievthandler.h in Headers */,
 				6D0E25290665E337009E5976 /* PIWindowQuartz.h in Headers */,
-				6D0E252A0665E338009E5976 /* PIControl.h in Headers */,
 				6D0E252B0665E338009E5976 /* PIContainerQuartz.h in Headers */,
 				6D0E253006661DC2009E5976 /* piwindowgen.h in Headers */,
@@ -774,5 +800,5 @@
 				6DFD5AD606774018009E5976 /* PIApplQuartz.h in Headers */,
 				6DEA82D10C7EDF5B00B7D5DD /* pistdwdggen.h in Headers */,
-				6DEA831F0C7F162300B7D5DD /* pistdwdgmosx.h in Headers */,
+				6DEA831F0C7F162300B7D5DD /* pistdwdgquartz.h in Headers */,
 				6DF012F60CBF6A510026E580 /* PIPeriodQuartz.h in Headers */,
 				6D6F12710D6446D500583608 /* machdefs.h in Headers */,
@@ -790,4 +816,16 @@
 				6D6F140A0D64605E00583608 /* pifontgen.h in Headers */,
 				6D6F14130D64611D00583608 /* strutilxx.h in Headers */,
+				6DF26D1B0E7FB7EC001AE7EF /* pibwdggen.h in Headers */,
+				6DF26D1D0E7FB7EC001AE7EF /* pidrawer.h in Headers */,
+				6DF26D250E7FB84E001AE7EF /* piaxes.h in Headers */,
+				6DF26D260E7FB84E001AE7EF /* pigraphgen.h in Headers */,
+				6DF26D280E7FB84E001AE7EF /* pigraphuc.h in Headers */,
+				6DF26D290E7FB84E001AE7EF /* psfile.h in Headers */,
+				6DF26D2B0E7FDF45001AE7EF /* ucckprot.h in Headers */,
+				6DF26D510E7FED78001AE7EF /* pioptmenugen.h in Headers */,
+				6DE18B860E837AD800414227 /* pioptmenuquartz.h in Headers */,
+				6DE18BF90E83E4FE00414227 /* pidrwtools.h in Headers */,
+				6DE18C1A0E83E91700414227 /* pibwdgquartz.h in Headers */,
+				6DE8E8170E87BA6D0031A5D9 /* pigraphps.h in Headers */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
@@ -1003,10 +1041,9 @@
 				6D0E25040665D32C009E5976 /* pimsghandler.cc in Sources */,
 				6D0E25220665E287009E5976 /* picontainergen.cc in Sources */,
-				6D0E25260665E2A9009E5976 /* piwdgmosx.cpp in Sources */,
+				6D0E25260665E2A9009E5976 /* piwdgquartz.cpp in Sources */,
 				6D0E25270665E2A9009E5976 /* piwdggen.cc in Sources */,
 				6D0E252C0665E33A009E5976 /* PIContainerQuartz.cpp in Sources */,
 				6D0E252D0665E33A009E5976 /* pievthandler.cc in Sources */,
 				6D0E252E0665E33B009E5976 /* PIWindowQuartz.cpp in Sources */,
-				6D0E252F0665E33B009E5976 /* PIControl.cpp in Sources */,
 				6D0E253106661DC4009E5976 /* piwindowgen.cc in Sources */,
 				6D7D4E4D066710EB009E5976 /* pimenubargen.cc in Sources */,
@@ -1017,5 +1054,5 @@
 				6DFD5AD706774018009E5976 /* PIApplQuartz.cpp in Sources */,
 				6DEA82D00C7EDF5700B7D5DD /* pistdwdggen.cc in Sources */,
-				6DEA83230C7F166500B7D5DD /* pistdwdgmosx.cpp in Sources */,
+				6DEA83230C7F166500B7D5DD /* pistdwdgquartz.cpp in Sources */,
 				6DF012F70CBF6A510026E580 /* PIPeriodQuartz.cpp in Sources */,
 				6D6F13310D64550C00583608 /* pifontquartz.cpp in Sources */,
@@ -1031,4 +1068,13 @@
 				6D6F14090D64605E00583608 /* pifontgen.cc in Sources */,
 				6D6F14120D64611D00583608 /* strutilxx.cc in Sources */,
+				6DF26D1A0E7FB7EC001AE7EF /* pibwdggen.cc in Sources */,
+				6DF26D1C0E7FB7EC001AE7EF /* pidrawer.cc in Sources */,
+				6DF26D240E7FB84E001AE7EF /* piaxes.cc in Sources */,
+				6DF26D270E7FB84E001AE7EF /* pigraphuc.cc in Sources */,
+				6DF26D500E7FED78001AE7EF /* pioptmenugen.cc in Sources */,
+				6DE18B870E837AD800414227 /* pioptmenuquartz.cpp in Sources */,
+				6DE18BF80E83E4FE00414227 /* pidrwtools.cc in Sources */,
+				6DE18C1B0E83E91700414227 /* pibwdgquartz.cpp in Sources */,
+				6DE8E8160E87BA6D0031A5D9 /* pigraphps.cc in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
@@ -1046,10 +1092,4 @@
 			buildActionMask = 2147483647;
 			files = (
-				6D622CEA0D8ED11400428D9A /* BaoAdc.cpp in Sources */,
-				6DED73910D8FA59000D85368 /* RegisterWindow.cpp in Sources */,
-				6DED33260DADE70C00A2F30F /* SPIWindow.cpp in Sources */,
-				6DED34040DAE002100A2F30F /* SIPllWindow.cpp in Sources */,
-				6DED34880DAE115500A2F30F /* MixReg.cpp in Sources */,
-				6DED34DB0DAE15B200A2F30F /* ADCWindow.cpp in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
@@ -1103,9 +1143,13 @@
 				INFOPLIST_FILE = "BaoAdc-Info.plist";
 				INSTALL_PATH = "$(USER_APPS_DIR)";
-				OPTIMIZATION_CFLAGS = "-O0";
-				OTHER_CFLAGS = "-D__PIWQUARTZ__";
+				LIBRARY_SEARCH_PATHS = "\"$(SRCROOT)/../../../USB/LALUsb/build/Debug\"";
+				OPTIMIZATION_CFLAGS = "-O0";
+				OTHER_CFLAGS = (
+					"-D__PIWQUARTZ__",
+					"-D_TEST245_CONSOLE_",
+				);
 				OTHER_CPLUSPLUSFLAGS = (
-					"$(OTHER_CFLAGS)",
 					"-D__PIWQUARTZ__",
+					"-D_TEST245_CONSOLE_",
 				);
 				OTHER_LDFLAGS = (
@@ -1135,6 +1179,14 @@
 				INFOPLIST_FILE = "BaoAdc-Info.plist";
 				INSTALL_PATH = "$(USER_APPS_DIR)";
-				OPTIMIZATION_CFLAGS = "-O0";
-				OTHER_CFLAGS = "";
+				LIBRARY_SEARCH_PATHS = "\"$(SRCROOT)/../../../USB/LALUsb/build/Debug\"";
+				OPTIMIZATION_CFLAGS = "-O0";
+				OTHER_CFLAGS = (
+					"-D__PIWQUARTZ__",
+					"-D_TEST245_CONSOLE_",
+				);
+				OTHER_CPLUSPLUSFLAGS = (
+					"-D__PIWQUARTZ__",
+					"-D_TEST245_CONSOLE_",
+				);
 				OTHER_LDFLAGS = (
 					"-framework",
@@ -1162,6 +1214,14 @@
 				INFOPLIST_FILE = "BaoAdc-Info.plist";
 				INSTALL_PATH = "$(USER_APPS_DIR)";
-				OPTIMIZATION_CFLAGS = "-O0";
-				OTHER_CFLAGS = "";
+				LIBRARY_SEARCH_PATHS = "\"$(SRCROOT)/../../../USB/LALUsb/build/Debug\"";
+				OPTIMIZATION_CFLAGS = "-O0";
+				OTHER_CFLAGS = (
+					"-D__PIWQUARTZ__",
+					"-D_TEST245_CONSOLE_",
+				);
+				OTHER_CPLUSPLUSFLAGS = (
+					"-D__PIWQUARTZ__",
+					"-D_TEST245_CONSOLE_",
+				);
 				OTHER_LDFLAGS = (
 					"-framework",
@@ -1562,4 +1622,5 @@
 			isa = XCBuildConfiguration;
 			buildSettings = {
+				HEADER_SEARCH_PATHS = Quartz;
 			};
 			name = Development;
