00001 # -*- coding: utf-8 -*- 00002 00003 __version__ = "$Revision: 1.9 $" 00004 00005 import sys 00006 from qt import * 00007 from GOSEDCAL import GOSEDCALWindow 00008 import colorScale 00009 00010 00011 class GOSEDCALImpl(GOSEDCALWindow): 00012 def __init__(self, preferences, parent = None,name = None,fl = 0): 00013 GOSEDCALWindow.__init__(self,parent,name,fl) 00014 00015 self.__preferences = preferences 00016 00017 self.rainbowScaleCAL.setMinimumWidth(410) 00018 self.rainbowScaleCAL.setMinimumHeight(15) 00019 self.rainbowScaleCAL.setMaximumWidth(410) 00020 self.rainbowScaleCAL.setMaximumHeight(15) 00021 self.rainbowScaleCAL.setEnabled(0) 00022 00023 # ATK-051111: Implemeneted in GOSEDPainter instead. 00024 #~ self.rainbowPixmap = QPixmap(410, 15) 00025 #~ p = QPainter(self.rainbowPixmap) 00026 00027 #~ minV = 1.0e-15 00028 #~ maxV = 1.0 - minV 00029 #~ value = minV 00030 00031 # Divide length of the frame (400) in intervals of 1 00032 #~ dV = (maxV - minV) / float(self.rainbowScaleCAL.width()) 00033 #~ tileWidth = 1 00034 #~ tileHeight = 15 00035 #~ for i in range(0, self.rainbowScaleCAL.width()): 00036 #~ r, g, b = colorScale.colorScale(value) 00037 #~ p.setBrush(QColor(r, g, b)) 00038 #~ p.setPen(QColor(r, g, b)) 00039 #~ p.drawRect(i*tileWidth, 0, 00040 #~ (i + 1)*tileWidth, tileHeight 00041 #~ ) 00042 #~ value += dV 00043 00044 self.relabel() 00045 00046 #~ self.paintBackground() 00047 00048 def relabel(self): 00049 minValue = self.__preferences.minCAL() 00050 maxValue = self.__preferences.maxCAL() 00051 00052 interval = (maxValue - minValue)/5 00053 00054 self.redLbl.setText(str(minValue)) 00055 self.orangeLbl.setText(str(minValue + 1*interval)) 00056 self.yellowLbl.setText(str(minValue + 2*interval)) 00057 self.greenLbl.setText(str(minValue + 3*interval)) 00058 self.blueLbl.setText(str(minValue + 4*interval)) 00059 self.violetLbl.setText(str(maxValue)) 00060 00061 # ATK-051111: Implemeneted in GOSEDPainter instead. 00062 #~ def paintEvent(self, pe): 00063 #~ """ Paint Event function for the rainbow scale 00064 #~ \param pe paint event 00065 #~ """ 00066 00067 #~ self.paintBackground() 00068 00069 #~ def paintBackground(self): 00070 #~ bitBlt(self.rainbowScaleCAL, 0 , 0, self.rainbowPixmap, 0, 0) 00071 00072 00073 if __name__ == "__main__": 00074 a = QApplication(sys.argv) 00075 QObject.connect(a,SIGNAL("lastWindowClosed()"),a,SLOT("quit()")) 00076 w = GOSEDCALImpl() 00077 a.setMainWidget(w) 00078 w.show() 00079 a.exec_loop()