コード例 #1
0
    def __init__(self, *args):
        QtGui.QWidget.__init__(self, None)
        self.ui = Ui_Form()
        self.ui.setupUi(self)

        self.camActive = False

        Widget.desc = QVariant(unicode(i18n("Create Your User Picture")))

        self.pictureTaken = 0
        self.ui.takeButton.hide()

        for dev in os.listdir("/dev"):
            if dev.startswith("video"):
                cam = v4l2capture.Video_device(os.path.join("/dev", dev))
                cam_driver, cam_card, cam_bus, cam_capabilities = cam.get_info(
                )
                cam_str = "%s - %s" % (cam_card, os.path.join("/dev", dev))

                if "video_capture" in cam_capabilities:
                    if "radio" in cam_capabilities or "tuner" in cam_capabilities:
                        continue
                    self.ui.comboBox.addItem(
                        cam_str, QVariant(os.path.join("/dev", dev)))

        self.timer = QtCore.QTimer(self)
        self.connect(self.timer, QtCore.SIGNAL("timeout()"), self.refreshCam)
        self.connect(self.ui.comboBox, QtCore.SIGNAL('activated(QString)'),
                     self.processSelection)
        self.connect(self.ui.takeButton, QtCore.SIGNAL('clicked()'),
                     self.showPicture)
        self.connect(self.ui.takeAgainButton, QtCore.SIGNAL('clicked()'),
                     self.activateCam)

        self.ui.takeAgainButton.hide()