Ejemplo n.º 1
0
    def __init__(self, parent=None):
        super(NodeLabelWidget, self).__init__(parent)

        self._mapped = False

        self.data_mapper = QtGui.QDataWidgetMapper()

        self.setFixedHeight(50)

        self._create_widgets()
        self._create_layout()
Ejemplo n.º 2
0
    def setModel(self, model):
        self.model = model

        # create widget mapping
        self.data_mapper = QtGui.QDataWidgetMapper()
        self.data_mapper.setModel(self.model)

        # mapping(widget, column)
        self.data_mapper.addMapping(self.name_widget.edit, 0)
        self.data_mapper.addMapping(self.type_widget.edit, 1)

        # bind mapper to first row in model
        self.data_mapper.toFirst()
Ejemplo n.º 3
0
    def setModel(self, model):
        self.model = model

        if True:
            # test
            # we can set btn icon like this and text will map correctly
            # but we can't bind icon and text at same time
            resource = self.model._resources["Camera"]
            pixmap = QtGui.QPixmap(resource)
            icon = QtGui.QIcon(pixmap)
            self.test_btn.setIcon(icon)

        # create widget mapping
        self.data_mapper = QtGui.QDataWidgetMapper()
        self.data_mapper.setModel(self.model)

        # set completer

        self.list_model = TreeToListProxyModel()
        self.list_model.setSourceModel(self.model)

        self.completer.setModel(self.list_model)
        self.configure_completer_tree()

        # mapping(widget, column)
        #         self.data_mapper.addMapping(self.edit_widget, 0)
        self.data_mapper.addMapping(self.edit_widget2, 0)
        # self.data_mapper.addMapping(self.label_widget, 0, "text") # overrides
        # pixmap

        self.data_mapper.addMapping(self.pixmap_label, 4, "pixmap")
        self.data_mapper.addMapping(self.name_label, 0, "text")

        # can't do both!?
        self.data_mapper.addMapping(self.test_btn, 0, "text")
        #         self.data_mapper.addMapping(self.test_btn, 5, "icon")

        self.data_mapper.addMapping(self.combo, 0)

        #         self.data_mapper.addMapping(self.type_widget.edit, 1)

        # bind mapper to first row in model
        self.data_mapper.toFirst()
Ejemplo n.º 4
0
    def __init__(self, parent=None):
        super(NodeDropWidget, self).__init__(parent)

        self._mapped = False

        self.setAcceptDrops(True)
        self.setMouseTracking(False)

        self.setToolTip("drag a thing on to me!")

        self.data_mapper = QtGui.QDataWidgetMapper()

        self.setFixedHeight(50)

        self._create_widgets()
        self._create_layout()
        self._define_context_menu()

        self.accept_palette = QtGui.QPalette()

        self.accept_palette.setColor(QtGui.QPalette.Background,
                                     QtCore.Qt.green)

        self.frame_widget.setAutoFillBackground(True)
Ejemplo n.º 5
0
    def __init__(self, parent=None):
        super(PhoneLogDlg, self).__init__(parent)

        callerLabel = QtGui.QLabel("&Caller:")
        self.callerEdit = QtGui.QLineEdit()
        callerLabel.setBuddy(self.callerEdit)
        today = QtCore.QDate.currentDate()
        startLabel = QtGui.QLabel("&Start:")
        self.startDateTime = QtGui.QDateTimeEdit()
        startLabel.setBuddy(self.startDateTime)
        self.startDateTime.setDateRange(today, today)
        self.startDateTime.setDisplayFormat(DATETIME_FORMAT)
        endLabel = QtGui.QLabel("&End:")
        self.endDateTime = QtGui.QDateTimeEdit()
        endLabel.setBuddy(self.endDateTime)
        self.endDateTime.setDateRange(today, today)
        self.endDateTime.setDisplayFormat(DATETIME_FORMAT)
        topicLabel = QtGui.QLabel("&Topic:")
        topicEdit = QtGui.QLineEdit()
        topicLabel.setBuddy(topicEdit)
        firstButton = QtGui.QPushButton()
        firstButton.setIcon(QtGui.QIcon(":/first.png"))
        prevButton = QtGui.QPushButton()
        prevButton.setIcon(QtGui.QIcon(":/prev.png"))
        nextButton = QtGui.QPushButton()
        nextButton.setIcon(QtGui.QIcon(":/next.png"))
        lastButton = QtGui.QPushButton()
        lastButton.setIcon(QtGui.QIcon(":/last.png"))
        addButton = QtGui.QPushButton("&Add")
        addButton.setIcon(QtGui.QIcon(":/add.png"))
        deleteButton = QtGui.QPushButton("&Delete")
        deleteButton.setIcon(QtGui.QIcon(":/delete.png"))
        quitButton = QtGui.QPushButton("&Quit")
        quitButton.setIcon(QtGui.QIcon(":/quit.png"))

        addButton.setFocusPolicy(QtCore.Qt.NoFocus)
        deleteButton.setFocusPolicy(QtCore.Qt.NoFocus)

        fieldLayout = QtGui.QGridLayout()
        fieldLayout.addWidget(callerLabel, 0, 0)
        fieldLayout.addWidget(self.callerEdit, 0, 1, 1, 3)
        fieldLayout.addWidget(startLabel, 1, 0)
        fieldLayout.addWidget(self.startDateTime, 1, 1)
        fieldLayout.addWidget(endLabel, 1, 2)
        fieldLayout.addWidget(self.endDateTime, 1, 3)
        fieldLayout.addWidget(topicLabel, 2, 0)
        fieldLayout.addWidget(topicEdit, 2, 1, 1, 3)
        navigationLayout = QtGui.QHBoxLayout()
        navigationLayout.addWidget(firstButton)
        navigationLayout.addWidget(prevButton)
        navigationLayout.addWidget(nextButton)
        navigationLayout.addWidget(lastButton)
        fieldLayout.addLayout(navigationLayout, 3, 0, 1, 2)
        buttonLayout = QtGui.QVBoxLayout()
        buttonLayout.addWidget(addButton)
        buttonLayout.addWidget(deleteButton)
        buttonLayout.addStretch()
        buttonLayout.addWidget(quitButton)
        layout = QtGui.QHBoxLayout()
        layout.addLayout(fieldLayout)
        layout.addLayout(buttonLayout)
        self.setLayout(layout)

        self.model = QtSql.QSqlTableModel(self)
        self.model.setTable("calls")
        self.model.setSort(STARTTIME, QtCore.Qt.AscendingOrder)
        self.model.select()

        #maps from widget to model (neet to set model)
        self.mapper = QtGui.QDataWidgetMapper(self)
        self.mapper.setSubmitPolicy(QtGui.QDataWidgetMapper.ManualSubmit)
        self.mapper.setModel(self.model)
        self.mapper.addMapping(self.callerEdit, CALLER)
        self.mapper.addMapping(self.startDateTime, STARTTIME)
        self.mapper.addMapping(self.endDateTime, ENDTIME)
        self.mapper.addMapping(topicEdit, TOPIC)
        self.mapper.toFirst()

        firstButton.clicked.connect(
                lambda: self.saveRecord(PhoneLogDlg.FIRST))
        prevButton.clicked.connect(
                lambda: self.saveRecord(PhoneLogDlg.PREV))
        nextButton.clicked.connect(
                lambda: self.saveRecord(PhoneLogDlg.NEXT))
        lastButton.clicked.connect(
                lambda: self.saveRecord(PhoneLogDlg.LAST))
        addButton.clicked.connect(self.addRecord)
        deleteButton.clicked.connect(self.deleteRecord)
        quitButton.clicked.connect(self.accept)

        self.setWindowTitle("Phone Log")