00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029 from Koo.Common import Common
00030
00031 from Koo.Common.Calendar import *
00032 from Koo.Search.AbstractSearchWidget import *
00033 from PyQt4.QtGui import *
00034 from PyQt4.QtCore import *
00035 from PyQt4.uic import *
00036
00037 class TimeSearchWidget(AbstractSearchWidget):
00038 def __init__(self, name, parent, attrs={}):
00039 AbstractSearchWidget.__init__(self, name, parent, attrs)
00040 self.uiStart = QLineEdit( self )
00041 label = QLabel( "-", self)
00042 self.uiEnd = QLineEdit( self )
00043 layout = QHBoxLayout( self )
00044 layout.setContentsMargins( 0, 0, 0, 0 )
00045 layout.setSpacing( 0 )
00046 layout.addWidget(self.uiStart)
00047 layout.addWidget(label)
00048 layout.addWidget(self.uiEnd)
00049
00050
00051 self.uiStart.installEventFilter( self )
00052 self.uiEnd.installEventFilter( self )
00053
00054 self.focusWidget = self.uiStart
00055
00056 def _getTime(self, text):
00057 time = textToTime( text )
00058 if time.isValid():
00059 return str( time.toString( 'hh:mm:ss' ) )
00060 else:
00061 return False
00062
00063 def value(self):
00064 res = []
00065 val = self._getTime( str( self.uiStart.text() ) )
00066 if val:
00067 res.append((self.name, '>=', val ))
00068 else:
00069 self.uiStart.clear()
00070 val = self._getTime( str( self.uiEnd.text()) )
00071 if val:
00072 res.append((self.name, '<=', val ))
00073 else:
00074 self.uiEnd.clear()
00075 return res
00076
00077 def clear(self):
00078 self.uiStart.clear()
00079 self.uiEnd.clear()
00080
00081 def setValue(self, value):
00082 if value:
00083 self.uiStart.setText( unicode(value) )
00084 self.uiEnd.setText( unicode(value) )
00085 else:
00086 self.uiStart.clear()
00087 self.uiEnd.clear()
00088