def __init__(self, parent,mainPtr):
     self._init_ctrls(parent)
     self.mainPtr=mainPtr
     
     
      # status labels/fields
     self.sjp=stageJumpPos(self,rPos=wx.Point(200+8,8),label='Focus Axis [ustep]',jumpSize=0.0001)
     self.sjp.SetToolTipString(u'X02DA-ES1-MS1:FOC_MovAbs')
     self.mainPtr.kRegisterCtrl(self.sjp)
     
     self.hSlitCent=stageJumpPos(self,rPos=wx.Point(216+8,144+16),label='Center [mm]',jumpSize=0.001)
     self.hSlitCent.SetToolTipString(u'X02DA-ES1-SHt2.D')
     self.mainPtr.kRegisterCtrl(self.hSlitCent)
     
     self.hSlitSize=stageJumpPos(self,rPos=wx.Point(216+8,88+144+16),label='Size [mm]',jumpSize=0.001)
     self.hSlitSize.SetToolTipString(u'X02DA-ES1-SHsize')
     self.mainPtr.kRegisterCtrl(self.hSlitSize)
     
     self.vSlitCent=stageJumpPos(self,rPos=wx.Point(16+8,144+16),label='Center [mm]',jumpSize=0.001)
     self.vSlitCent.SetToolTipString(u'X02DA-ES1-SVt2.D')
     self.mainPtr.kRegisterCtrl(self.vSlitCent)
     
     self.vSlitSize=stageJumpPos(self,rPos=wx.Point(16+8,88+144+16),label='Size [mm]',jumpSize=0.001)
     self.vSlitSize.SetToolTipString(u'X02DA-ES1-SVsize')
     self.mainPtr.kRegisterCtrl(self.vSlitSize)
     
     objHeader=['status','statusText','procButton']
     for objType in objHeader:
         stillMore=1
         cDex=1 
         while stillMore:
             try:
                 curObj=eval('self.'+objType+str(cDex));
             except:
                 stillMore=0
             if stillMore:
                 self.mainPtr.kRegisterCtrl(curObj)
             cDex+=1
    def __init__(self, parent,mainPtr=-1):
        self._init_ctrls(parent)
        self.mainPtr=mainPtr
        #print dir(dir(self))
        # status labels/fields
        stillMore=1
        cDex=1
        

        self.sjp2=stageJumpPos(self,rPos=wx.Point(8+8,16+16),label='XX')
        self.sjp2.SetToolTipString(u'X02DA-ES1-SMP1:TRXX')
        self.mainPtr.kRegisterCtrl(self.sjp2)
        self.sjp3=stageJumpPos(self,rPos=wx.Point(16+170,32),label='ZZ')
        self.sjp3.SetToolTipString(u'X02DA-ES1-SMP1:TRZZ')
        self.mainPtr.kRegisterCtrl(self.sjp3)
        self.sjp1=stageJumpPos(self,rPos=wx.Point(352+8,32),label='Rot Y [deg]')
        self.sjp1.SetToolTipString(u'X02DA-ES1-SMP1:ROTYUSETP')
        #self.sjp1.SetToolTipString(u'X02DA-ES1-ROBO:CM-ITER')
        self.mainPtr.kRegisterCtrl(self.sjp1)
        
        self.sjpX=stageJumpPos(self,rPos=wx.Point(8+8,152+16),label='X [um]')
        self.sjpX.SetToolTipString(u'X02DA-ES1-SMP1:TRX')
        self.mainPtr.kRegisterCtrl(self.sjpX)
        
        self.sjpY=stageJumpPos(self,rPos=wx.Point(170+16,152+16),label='Y [um]')
        self.sjpY.SetToolTipString(u'X02DA-ES1-SMP1:TRY')
        self.mainPtr.kRegisterCtrl(self.sjpY)
        
        self.sjpZ=stageJumpPos(self,rPos=wx.Point(2*170+16,152+16),label='Z [um]')
        self.sjpZ.SetToolTipString(u'X02DA-ES1-SMP1:TRZ')
        self.mainPtr.kRegisterCtrl(self.sjpZ)
        
        self.sjpmX=stageJumpPos(self,rPos=wx.Point(8+8,280+16),label='X [um]')
        self.sjpmX.SetToolTipString(u'X02DA-ES1-MS1:TRX')
        self.mainPtr.kRegisterCtrl(self.sjpmX)
        
        self.sjpmY=stageJumpPos(self,rPos=wx.Point(170+16,280+16),label='Y [um]')
        self.sjpmY.SetToolTipString(u'X02DA-ES1-MS1:TRY')
        self.mainPtr.kRegisterCtrl(self.sjpmY)
        
        self.sjpmZ=stageJumpPos(self,rPos=wx.Point(2*170+16,280+16),label='Z [um]')
        self.sjpmZ.SetToolTipString(u'X02DA-ES1-MS1:TRZ')
        self.mainPtr.kRegisterCtrl(self.sjpmZ)
        
        while stillMore:
            try:
                curObj=eval('self.status'+str(cDex));
                curObjVal=curObj.GetLabel();
                curObj.SetToolTipString(curObjVal)
                print 'self.status'+str(cDex)
                
            except:
                stillMore=0
            if stillMore:
                self.mainPtr.kRegisterCtrl(curObj)
            cDex+=1

        # status textboxes
        stillMore=1
        cDex=1
        self.statusTexts=[]
        while stillMore:
            try:
                curObj=eval('self.statusText'+str(cDex))
                curObjVal=curObj.GetValue()
                curObj.SetToolTipString(curObjVal)
            except:
                stillMore=0
            if stillMore:
                self.mainPtr.kRegisterCtrl(curObj)
            cDex+=1

        # spin status
        stillMore=1
        cDex=1
        while stillMore:
            try:
                curObj=eval('self.spinStatus'+str(cDex))
            except:
                stillMore=0
            if stillMore:
                self.mainPtr.kRegisterCtrl(curObj)
            cDex+=1
        # check boxes
        stillMore=1
        cDex=1
        while stillMore:
            try:
                curObj=eval('self.statusCheck'+str(cDex))
            except:
                stillMore=0
            if stillMore:
                self.mainPtr.kRegisterCtrl(curObj)
            cDex+=1
        if self.mainPtr==-1:
            print 'Running in demo mode'