def __init__(self, parent=None, designMode=False):
        TaurusWidget.__init__(self, parent, designMode=designMode)

        self._ui = Ui_LiberaBrilliancePlusMini()
        self._ui.setupUi(self)

        self._ui.taurusCurveDialog = myTaurusCurveDialog(self)
        self._ui.taurusCurveDialog.setObjectName("taurusCurveDialog")
        self._ui.gridLayout.addWidget(self._ui.taurusCurveDialog, 0, 0, 1, 1)

        self.l_plot = self._ui.taurusCurveDialog.get_active_plot()
        self.sym = QwtSymbol(QwtSymbol.Ellipse, QtGui.QBrush(QtCore.Qt.blue),
                             QtGui.QPen(QtCore.Qt.blue), QtCore.QSize(10, 10))
        self.sym_old = QwtSymbol(QwtSymbol.Ellipse,
                                 QtGui.QBrush(QtCore.Qt.gray),
                                 QtGui.QPen(QtCore.Qt.gray),
                                 QtCore.QSize(4, 4))
        self.l_plot.set_axis_limits('left', -0.003, 0.003)
        self.l_plot.set_axis_title('left', "Y")
        self.l_plot.set_axis_unit('left', "mm")
        self.l_plot.set_axis_limits('bottom', -0.003, 0.003)
        self.l_plot.set_axis_title('bottom', "X")
        self.l_plot.set_axis_unit('bottom', "mm")
        self.x = 0
        self.y = 0
        self.list_mark = []
        self.apply_color = True
        self.trigger.connect(self.update_plot)
    def __init__(self, parent=None, designMode=False):
        TaurusWidget.__init__(self, parent, designMode=designMode)
        
        self._ui = Ui_LiberaBrilliancePlusMini()
        self._ui.setupUi(self)

        self._ui.taurusCurveDialog = myTaurusCurveDialog(self)
        self._ui.taurusCurveDialog.setObjectName("taurusCurveDialog")
        self._ui.gridLayout.addWidget(self._ui.taurusCurveDialog, 0, 0, 1, 1)

        self.l_plot = self._ui.taurusCurveDialog.get_active_plot()
        self.sym = QwtSymbol(QwtSymbol.Ellipse, QtGui.QBrush(QtCore.Qt.blue), QtGui.QPen(QtCore.Qt.blue), QtCore.QSize(10, 10))
        self.sym_old = QwtSymbol(QwtSymbol.Ellipse, QtGui.QBrush(QtCore.Qt.gray), QtGui.QPen(QtCore.Qt.gray), QtCore.QSize(4, 4))
        self.l_plot.set_axis_limits('left', -0.003, 0.003)
        self.l_plot.set_axis_title('left', "Y")
        self.l_plot.set_axis_unit('left', "mm")
        self.l_plot.set_axis_limits('bottom', -0.003, 0.003)
        self.l_plot.set_axis_title('bottom', "X")
        self.l_plot.set_axis_unit('bottom', "mm")
        self.x = 0
        self.y = 0
        self.list_mark = []
        self.apply_color = True
        self.trigger.connect(self.update_plot)
class LiberaBrilliancePlusMini(TaurusWidget):
    l_plot = None
    trigger = QtCore.pyqtSignal()
    def __init__(self, parent=None, designMode=False):
        TaurusWidget.__init__(self, parent, designMode=designMode)
        
        self._ui = Ui_LiberaBrilliancePlusMini()
        self._ui.setupUi(self)

        self._ui.taurusCurveDialog = myTaurusCurveDialog(self)
        self._ui.taurusCurveDialog.setObjectName("taurusCurveDialog")
        self._ui.gridLayout.addWidget(self._ui.taurusCurveDialog, 0, 0, 1, 1)

        self.l_plot = self._ui.taurusCurveDialog.get_active_plot()
        self.sym = QwtSymbol(QwtSymbol.Ellipse, QtGui.QBrush(QtCore.Qt.blue), QtGui.QPen(QtCore.Qt.blue), QtCore.QSize(10, 10))
        self.sym_old = QwtSymbol(QwtSymbol.Ellipse, QtGui.QBrush(QtCore.Qt.gray), QtGui.QPen(QtCore.Qt.gray), QtCore.QSize(4, 4))
        self.l_plot.set_axis_limits('left', -0.003, 0.003)
        self.l_plot.set_axis_title('left', "Y")
        self.l_plot.set_axis_unit('left', "mm")
        self.l_plot.set_axis_limits('bottom', -0.003, 0.003)
        self.l_plot.set_axis_title('bottom', "X")
        self.l_plot.set_axis_unit('bottom', "mm")
        self.x = 0
        self.y = 0
        self.list_mark = []
        self.apply_color = True
        self.trigger.connect(self.update_plot)
        
    
    @classmethod
    def getQtDesignerPluginInfo(cls):
        ret = TaurusWidget.getQtDesignerPluginInfo()
        ret['module'] = 'liberabrillianceplusmini'
        ret['group'] = 'Taurus Display'
        ret['container'] = ':/designer/frame.png'
        ret['container'] = False
        return ret

    def setModel(self, models):
        from guiqwt.styles import style_generator        
        self._ui.taurusTrend.style = style_generator("brmgcykG")
        self._ui.taurusTrend.setModel(models[:2])
        index = models[0].rfind("/")
        self.model = models[0][:index]
        self.dev = PyTango.DeviceProxy(self.model)
        self.id1 = self.dev.subscribe_event('XPosSP', PyTango.EventType.CHANGE_EVENT, self.handle_x)
        self.id2 = self.dev.subscribe_event('YPosSP', PyTango.EventType.CHANGE_EVENT, self.handle_y)
        self._ui.taurusTrend_2.setModel(models[2])

    def handle_x(self, evt):
        if evt.attr_value is not None:
            if evt.attr_value.value != self.x:
	        self.x = evt.attr_value.value / 1e9

    def handle_y(self, evt):
        if evt.attr_value is not None:
            if evt.attr_value.value != self.y:
	        self.y = evt.attr_value.value / 1e9
                self.mark = QwtPlotMarker()
                self.mark.setSymbol(self.sym)
                self.mark.attach(self.l_plot)
	        self.mark.setValue(self.x, self.y)
                if len(self.list_mark) > 10:
                    self.list_mark[0].setVisible(False)
                    l_mark = self.list_mark[0]
                    self.list_mark.pop(0)
                for mark in self.list_mark:
                    mark.setSymbol(self.sym_old)
                self.list_mark.append(self.mark)
                self.trigger.emit()

    def update_plot(self):
        if self.l_plot is not None:
            self.l_plot.replot()
class LiberaBrilliancePlusMini(TaurusWidget):
    l_plot = None
    trigger = QtCore.pyqtSignal()

    def __init__(self, parent=None, designMode=False):
        TaurusWidget.__init__(self, parent, designMode=designMode)

        self._ui = Ui_LiberaBrilliancePlusMini()
        self._ui.setupUi(self)

        self._ui.taurusCurveDialog = myTaurusCurveDialog(self)
        self._ui.taurusCurveDialog.setObjectName("taurusCurveDialog")
        self._ui.gridLayout.addWidget(self._ui.taurusCurveDialog, 0, 0, 1, 1)

        self.l_plot = self._ui.taurusCurveDialog.get_active_plot()
        self.sym = QwtSymbol(QwtSymbol.Ellipse, QtGui.QBrush(QtCore.Qt.blue),
                             QtGui.QPen(QtCore.Qt.blue), QtCore.QSize(10, 10))
        self.sym_old = QwtSymbol(QwtSymbol.Ellipse,
                                 QtGui.QBrush(QtCore.Qt.gray),
                                 QtGui.QPen(QtCore.Qt.gray),
                                 QtCore.QSize(4, 4))
        self.l_plot.set_axis_limits('left', -0.003, 0.003)
        self.l_plot.set_axis_title('left', "Y")
        self.l_plot.set_axis_unit('left', "mm")
        self.l_plot.set_axis_limits('bottom', -0.003, 0.003)
        self.l_plot.set_axis_title('bottom', "X")
        self.l_plot.set_axis_unit('bottom', "mm")
        self.x = 0
        self.y = 0
        self.list_mark = []
        self.apply_color = True
        self.trigger.connect(self.update_plot)

    @classmethod
    def getQtDesignerPluginInfo(cls):
        ret = TaurusWidget.getQtDesignerPluginInfo()
        ret['module'] = 'liberabrillianceplusmini'
        ret['group'] = 'Taurus Display'
        ret['container'] = ':/designer/frame.png'
        ret['container'] = False
        return ret

    def setModel(self, models):
        from guiqwt.styles import style_generator
        self._ui.taurusTrend.style = style_generator("brmgcykG")
        self._ui.taurusTrend.setModel(models[:2])
        index = models[0].rfind("/")
        self.model = models[0][:index]
        self.dev = PyTango.DeviceProxy(self.model)
        self.id1 = self.dev.subscribe_event('XPosSP',
                                            PyTango.EventType.CHANGE_EVENT,
                                            self.handle_x)
        self.id2 = self.dev.subscribe_event('YPosSP',
                                            PyTango.EventType.CHANGE_EVENT,
                                            self.handle_y)
        self._ui.taurusTrend_2.setModel(models[2])

    def handle_x(self, evt):
        if evt.attr_value is not None:
            if evt.attr_value.value != self.x:
                self.x = evt.attr_value.value / 1e9

    def handle_y(self, evt):
        if evt.attr_value is not None:
            if evt.attr_value.value != self.y:
                self.y = evt.attr_value.value / 1e9
                self.mark = QwtPlotMarker()
                self.mark.setSymbol(self.sym)
                self.mark.attach(self.l_plot)
                self.mark.setValue(self.x, self.y)
                if len(self.list_mark) > 10:
                    self.list_mark[0].setVisible(False)
                    l_mark = self.list_mark[0]
                    self.list_mark.pop(0)
                for mark in self.list_mark:
                    mark.setSymbol(self.sym_old)
                self.list_mark.append(self.mark)
                self.trigger.emit()

    def update_plot(self):
        if self.l_plot is not None:
            self.l_plot.replot()