# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file './acq4/devices/Camera/CameraInterfaceTemplate.ui'
#
# Created: Tue Dec 24 01:49:06 2013
#      by: PyQt4 UI code generator 4.10
#
# WARNING! All changes made in this file will be lost!

from PyQt4 import QtCore, QtGui

try:
    _fromUtf8 = QtCore.QString.fromUtf8
except AttributeError:
    def _fromUtf8(s):
        return s

try:
    _encoding = QtGui.QApplication.UnicodeUTF8
    def _translate(context, text, disambig):
        return QtGui.QApplication.translate(context, text, disambig, _encoding)
except AttributeError:
    def _translate(context, text, disambig):
        return QtGui.QApplication.translate(context, text, disambig)

class Ui_Form(object):
    def setupUi(self, Form):
        Form.setObjectName(_fromUtf8("Form"))
        Form.resize(198, 791)
        self.verticalLayout = QtGui.QVBoxLayout(Form)
        self.verticalLayout.setSpacing(15)
        self.verticalLayout.setMargin(0)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.recordCtrlWidget = QtGui.QWidget(Form)
        self.recordCtrlWidget.setObjectName(_fromUtf8("recordCtrlWidget"))
        self.gridLayout_3 = QtGui.QGridLayout(self.recordCtrlWidget)
        self.gridLayout_3.setSpacing(0)
        self.gridLayout_3.setMargin(0)
        self.gridLayout_3.setObjectName(_fromUtf8("gridLayout_3"))
        self.acquireVideoBtn = QtGui.QPushButton(self.recordCtrlWidget)
        self.acquireVideoBtn.setCheckable(True)
        self.acquireVideoBtn.setObjectName(_fromUtf8("acquireVideoBtn"))
        self.gridLayout_3.addWidget(self.acquireVideoBtn, 0, 1, 1, 1)
        self.acquireFrameBtn = QtGui.QPushButton(self.recordCtrlWidget)
        self.acquireFrameBtn.setObjectName(_fromUtf8("acquireFrameBtn"))
        self.gridLayout_3.addWidget(self.acquireFrameBtn, 0, 0, 1, 1)
        self.line = QtGui.QFrame(self.recordCtrlWidget)
        self.line.setFrameShape(QtGui.QFrame.HLine)
        self.line.setFrameShadow(QtGui.QFrame.Sunken)
        self.line.setObjectName(_fromUtf8("line"))
        self.gridLayout_3.addWidget(self.line, 4, 0, 1, 2)
        self.recordStackBtn = QtGui.QPushButton(self.recordCtrlWidget)
        self.recordStackBtn.setCheckable(True)
        self.recordStackBtn.setFlat(False)
        self.recordStackBtn.setObjectName(_fromUtf8("recordStackBtn"))
        self.gridLayout_3.addWidget(self.recordStackBtn, 6, 1, 1, 1)
        self.gridLayout = QtGui.QGridLayout()
        self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
        self.recordXframesCheck = QtGui.QCheckBox(self.recordCtrlWidget)
        self.recordXframesCheck.setObjectName(_fromUtf8("recordXframesCheck"))
        self.gridLayout.addWidget(self.recordXframesCheck, 0, 0, 1, 1)
        self.recordXframesSpin = QtGui.QSpinBox(self.recordCtrlWidget)
        self.recordXframesSpin.setEnabled(True)
        self.recordXframesSpin.setMinimum(1)
        self.recordXframesSpin.setMaximum(1000000)
        self.recordXframesSpin.setProperty("value", 100)
        self.recordXframesSpin.setObjectName(_fromUtf8("recordXframesSpin"))
        self.gridLayout.addWidget(self.recordXframesSpin, 0, 1, 1, 2)
        self.label_9 = QtGui.QLabel(self.recordCtrlWidget)
        self.label_9.setObjectName(_fromUtf8("label_9"))
        self.gridLayout.addWidget(self.label_9, 1, 0, 1, 1)
        self.stackSizeLabel = ValueLabel(self.recordCtrlWidget)
        self.stackSizeLabel.setObjectName(_fromUtf8("stackSizeLabel"))
        self.gridLayout.addWidget(self.stackSizeLabel, 1, 1, 1, 1)
        self.label = QtGui.QLabel(self.recordCtrlWidget)
        self.label.setObjectName(_fromUtf8("label"))
        self.gridLayout.addWidget(self.label, 2, 0, 1, 1)
        self.fpsLabel = ValueLabel(self.recordCtrlWidget)
        self.fpsLabel.setObjectName(_fromUtf8("fpsLabel"))
        self.gridLayout.addWidget(self.fpsLabel, 2, 1, 1, 1)
        self.label_7 = QtGui.QLabel(self.recordCtrlWidget)
        self.label_7.setObjectName(_fromUtf8("label_7"))
        self.gridLayout.addWidget(self.label_7, 3, 0, 1, 1)
        self.displayFpsLabel = ValueLabel(self.recordCtrlWidget)
        self.displayFpsLabel.setObjectName(_fromUtf8("displayFpsLabel"))
        self.gridLayout.addWidget(self.displayFpsLabel, 3, 1, 1, 1)
        self.displayPercentLabel = ValueLabel(self.recordCtrlWidget)
        self.displayPercentLabel.setObjectName(_fromUtf8("displayPercentLabel"))
        self.gridLayout.addWidget(self.displayPercentLabel, 3, 2, 1, 1)
        self.gridLayout_3.addLayout(self.gridLayout, 7, 0, 1, 2)
        self.saveFrameBtn = FeedbackButton(self.recordCtrlWidget)
        self.saveFrameBtn.setObjectName(_fromUtf8("saveFrameBtn"))
        self.gridLayout_3.addWidget(self.saveFrameBtn, 6, 0, 1, 1)
        self.frameToBgBtn = QtGui.QPushButton(self.recordCtrlWidget)
        self.frameToBgBtn.setObjectName(_fromUtf8("frameToBgBtn"))
        self.gridLayout_3.addWidget(self.frameToBgBtn, 3, 0, 1, 2)
        self.verticalLayout.addWidget(self.recordCtrlWidget)
        self.devCtrlWidget = QtGui.QWidget(Form)
        self.devCtrlWidget.setObjectName(_fromUtf8("devCtrlWidget"))
        self.gridLayout_4 = QtGui.QGridLayout(self.devCtrlWidget)
        self.gridLayout_4.setSpacing(0)
        self.gridLayout_4.setContentsMargins(-1, 0, -1, -1)
        self.gridLayout_4.setObjectName(_fromUtf8("gridLayout_4"))
        self.btnFullFrame = QtGui.QPushButton(self.devCtrlWidget)
        self.btnFullFrame.setObjectName(_fromUtf8("btnFullFrame"))
        self.gridLayout_4.addWidget(self.btnFullFrame, 2, 0, 1, 2)
        self.label_3 = QtGui.QLabel(self.devCtrlWidget)
        self.label_3.setObjectName(_fromUtf8("label_3"))
        self.gridLayout_4.addWidget(self.label_3, 1, 0, 1, 1)
        self.label_2 = QtGui.QLabel(self.devCtrlWidget)
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.gridLayout_4.addWidget(self.label_2, 0, 0, 1, 1)
        self.spinExposure = SpinBox(self.devCtrlWidget)
        self.spinExposure.setMinimumSize(QtCore.QSize(80, 0))
        self.spinExposure.setObjectName(_fromUtf8("spinExposure"))
        self.gridLayout_4.addWidget(self.spinExposure, 1, 1, 1, 1)
        self.binningCombo = QtGui.QComboBox(self.devCtrlWidget)
        self.binningCombo.setObjectName(_fromUtf8("binningCombo"))
        self.gridLayout_4.addWidget(self.binningCombo, 0, 1, 1, 1)
        self.verticalLayout.addWidget(self.devCtrlWidget)
        self.displayCtrlWidget = QtGui.QWidget(Form)
        self.displayCtrlWidget.setObjectName(_fromUtf8("displayCtrlWidget"))
        self.gridLayout_2 = QtGui.QGridLayout(self.displayCtrlWidget)
        self.gridLayout_2.setSpacing(0)
        self.gridLayout_2.setContentsMargins(-1, 0, -1, -1)
        self.gridLayout_2.setObjectName(_fromUtf8("gridLayout_2"))
        self.label_8 = QtGui.QLabel(self.displayCtrlWidget)
        self.label_8.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
        self.label_8.setObjectName(_fromUtf8("label_8"))
        self.gridLayout_2.addWidget(self.label_8, 3, 0, 1, 1)
        self.zoomLiveBtn = QtGui.QPushButton(self.displayCtrlWidget)
        self.zoomLiveBtn.setObjectName(_fromUtf8("zoomLiveBtn"))
        self.gridLayout_2.addWidget(self.zoomLiveBtn, 6, 0, 1, 2)
        self.btnAutoGain = QtGui.QPushButton(self.displayCtrlWidget)
        self.btnAutoGain.setCheckable(True)
        self.btnAutoGain.setChecked(False)
        self.btnAutoGain.setObjectName(_fromUtf8("btnAutoGain"))
        self.gridLayout_2.addWidget(self.btnAutoGain, 1, 0, 1, 2)
        self.spinAutoGainCenterWeight = QtGui.QDoubleSpinBox(self.displayCtrlWidget)
        self.spinAutoGainCenterWeight.setMaximum(1.0)
        self.spinAutoGainCenterWeight.setSingleStep(0.1)
        self.spinAutoGainCenterWeight.setObjectName(_fromUtf8("spinAutoGainCenterWeight"))
        self.gridLayout_2.addWidget(self.spinAutoGainCenterWeight, 3, 1, 1, 1)
        self.spinAutoGainSpeed = QtGui.QDoubleSpinBox(self.displayCtrlWidget)
        self.spinAutoGainSpeed.setProperty("value", 2.0)
        self.spinAutoGainSpeed.setObjectName(_fromUtf8("spinAutoGainSpeed"))
        self.gridLayout_2.addWidget(self.spinAutoGainSpeed, 2, 1, 1, 1)
        self.histogram = HistogramLUTWidget(self.displayCtrlWidget)
        self.histogram.setObjectName(_fromUtf8("histogram"))
        self.gridLayout_2.addWidget(self.histogram, 0, 0, 1, 2)
        self.label_6 = QtGui.QLabel(self.displayCtrlWidget)
        self.label_6.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
        self.label_6.setObjectName(_fromUtf8("label_6"))
        self.gridLayout_2.addWidget(self.label_6, 2, 0, 1, 1)
        self.label_4 = QtGui.QLabel(self.displayCtrlWidget)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_4.sizePolicy().hasHeightForWidth())
        self.label_4.setSizePolicy(sizePolicy)
        self.label_4.setAlignment(QtCore.Qt.AlignCenter)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.gridLayout_2.addWidget(self.label_4, 4, 0, 1, 2)
        self.alphaSlider = QtGui.QSlider(self.displayCtrlWidget)
        self.alphaSlider.setMaximum(100)
        self.alphaSlider.setSingleStep(1)
        self.alphaSlider.setProperty("value", 100)
        self.alphaSlider.setOrientation(QtCore.Qt.Horizontal)
        self.alphaSlider.setObjectName(_fromUtf8("alphaSlider"))
        self.gridLayout_2.addWidget(self.alphaSlider, 5, 0, 1, 2)
        self.verticalLayout.addWidget(self.displayCtrlWidget)
        self.bgSubtractWidget = QtGui.QWidget(Form)
        self.bgSubtractWidget.setObjectName(_fromUtf8("bgSubtractWidget"))
        self.gridLayout_5 = QtGui.QGridLayout(self.bgSubtractWidget)
        self.gridLayout_5.setSpacing(0)
        self.gridLayout_5.setContentsMargins(-1, 0, -1, -1)
        self.gridLayout_5.setObjectName(_fromUtf8("gridLayout_5"))
        self.bgBlurSpin = QtGui.QDoubleSpinBox(self.bgSubtractWidget)
        self.bgBlurSpin.setProperty("value", 0.0)
        self.bgBlurSpin.setObjectName(_fromUtf8("bgBlurSpin"))
        self.gridLayout_5.addWidget(self.bgBlurSpin, 2, 1, 1, 1)
        self.divideBgBtn = QtGui.QPushButton(self.bgSubtractWidget)
        self.divideBgBtn.setCheckable(True)
        self.divideBgBtn.setAutoExclusive(False)
        self.divideBgBtn.setObjectName(_fromUtf8("divideBgBtn"))
        self.gridLayout_5.addWidget(self.divideBgBtn, 4, 0, 1, 2)
        self.label_5 = QtGui.QLabel(self.bgSubtractWidget)
        self.label_5.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
        self.label_5.setObjectName(_fromUtf8("label_5"))
        self.gridLayout_5.addWidget(self.label_5, 2, 0, 1, 1)
        self.contAvgBgCheck = QtGui.QCheckBox(self.bgSubtractWidget)
        self.contAvgBgCheck.setObjectName(_fromUtf8("contAvgBgCheck"))
        self.gridLayout_5.addWidget(self.contAvgBgCheck, 1, 0, 1, 2)
        self.subtractBgBtn = QtGui.QPushButton(self.bgSubtractWidget)
        self.subtractBgBtn.setCheckable(True)
        self.subtractBgBtn.setAutoExclusive(False)
        self.subtractBgBtn.setObjectName(_fromUtf8("subtractBgBtn"))
        self.gridLayout_5.addWidget(self.subtractBgBtn, 3, 0, 1, 2)
        self.collectBgBtn = QtGui.QPushButton(self.bgSubtractWidget)
        self.collectBgBtn.setCheckable(True)
        self.collectBgBtn.setObjectName(_fromUtf8("collectBgBtn"))
        self.gridLayout_5.addWidget(self.collectBgBtn, 0, 0, 1, 1)
        self.bgTimeSpin = QtGui.QDoubleSpinBox(self.bgSubtractWidget)
        self.bgTimeSpin.setDecimals(1)
        self.bgTimeSpin.setSingleStep(1.0)
        self.bgTimeSpin.setProperty("value", 3.0)
        self.bgTimeSpin.setObjectName(_fromUtf8("bgTimeSpin"))
        self.gridLayout_5.addWidget(self.bgTimeSpin, 0, 1, 1, 1)
        self.verticalLayout.addWidget(self.bgSubtractWidget)

        self.retranslateUi(Form)
        QtCore.QMetaObject.connectSlotsByName(Form)

    def retranslateUi(self, Form):
        Form.setWindowTitle(_translate("Form", "Form", None))
        self.acquireVideoBtn.setToolTip(_translate("Form", "Start/stop camera acquisition.\n"
"In general, this can just stay on always.", None))
        self.acquireVideoBtn.setText(_translate("Form", "Acquire Video", None))
        self.acquireFrameBtn.setText(_translate("Form", "Acquire Frame", None))
        self.recordStackBtn.setToolTip(_translate("Form", "Start/stop recording frames as they are acquired. \n"
"Frames are written to the current storage directory set in \n"
"the data manager window.", None))
        self.recordStackBtn.setText(_translate("Form", "Record Stack", None))
        self.recordXframesCheck.setText(_translate("Form", "Stack Limit", None))
        self.recordXframesSpin.setSuffix(_translate("Form", " frames", None))
        self.label_9.setText(_translate("Form", "Stack Size:", None))
        self.stackSizeLabel.setText(_translate("Form", "0 frames", None))
        self.label.setText(_translate("Form", "Acquiring:", None))
        self.fpsLabel.setText(_translate("Form", "0 fps", None))
        self.label_7.setText(_translate("Form", "Displaying:", None))
        self.displayFpsLabel.setText(_translate("Form", "0 fps", None))
        self.displayPercentLabel.setText(_translate("Form", "(0%)", None))
        self.saveFrameBtn.setText(_translate("Form", "Save Frame", None))
        self.frameToBgBtn.setText(_translate("Form", "Last Frame → Background", None))
        self.btnFullFrame.setToolTip(_translate("Form", "Set the region of interest to the maximum possible area.", None))
        self.btnFullFrame.setText(_translate("Form", "Full Frame", None))
        self.label_3.setText(_translate("Form", "Exposure", None))
        self.label_2.setText(_translate("Form", "Binning", None))
        self.spinExposure.setToolTip(_translate("Form", "Sets the exposure time for each frame.", None))
        self.label_8.setText(_translate("Form", "Frame Center Weight", None))
        self.zoomLiveBtn.setText(_translate("Form", "Zoom to Live Image", None))
        self.btnAutoGain.setToolTip(_translate("Form", "Determines the behavior of the white/black level sliders.\n"
"When enabled, the sliders maximum and minimum values are set\n"
"to the maximum and minimum intensity values in the image.\n"
"When disabled, the minimum is 0 and the maximum is the largest \n"
"possible intensity given the bit depth of the camera.", None))
        self.btnAutoGain.setText(_translate("Form", "Auto Gain", None))
        self.spinAutoGainCenterWeight.setToolTip(_translate("Form", "Weights the auto gain measurement to the center 1/3 of\n"
"the frame when set to 1.0. A value of 0.0 meters from \n"
"the entire frame.", None))
        self.spinAutoGainSpeed.setToolTip(_translate("Form", "Smooths out the auto gain control, prevents very\n"
"brief flashes from affecting the gain. Larger values\n"
"indicate more smoothing.\n"
"", None))
        self.label_6.setText(_translate("Form", "Auto Gain Delay", None))
        self.label_4.setText(_translate("Form", "Transparency", None))
        self.bgBlurSpin.setToolTip(_translate("Form", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:\'MS Shell Dlg 2\'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">Blurs the background frame before dividing it from the current frame.</span></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">Large blur values may cause performance to degrade.</span></p></body></html>", None))
        self.divideBgBtn.setToolTip(_translate("Form", "Enables background division. \n"
"Either a set of static background frames need to have already by collected\n"
"(by pressing \'Static\' above) or \'Continuous\' needs to be pressed.", None))
        self.divideBgBtn.setText(_translate("Form", "Divide Background", None))
        self.label_5.setText(_translate("Form", "Blur Background.", None))
        self.contAvgBgCheck.setText(_translate("Form", "Continuous Average", None))
        self.subtractBgBtn.setText(_translate("Form", "Subtract Background", None))
        self.collectBgBtn.setText(_translate("Form", "Collect Background", None))
        self.bgTimeSpin.setToolTip(_translate("Form", "Sets the approximate number of frames to be averaged for\n"
"background division.", None))
        self.bgTimeSpin.setSuffix(_translate("Form", " s", None))

from acq4.pyqtgraph import HistogramLUTWidget, ValueLabel, FeedbackButton, SpinBox
