示例#1
0
    def __init__(self, parent=None):
        QWidget.__init__(self, parent)
        self.ui = Ui_PrefEditor()
        self.ui.setupUi(self)

        self.pref_model = PreferencesModel()
        self.ui.pref_view.setModel(self.pref_model)
示例#2
0
    def __init__(self, parent=None):
        QWidget.__init__(self, parent)
        self.ui = Ui_PrefEditor()
        self.ui.setupUi(self)

        self.pref_model = PreferencesModel()
        self.ui.pref_view.setModel(self.pref_model)
示例#3
0
class PreferencesWidgetEditor(QWidget):
    """
    A widget to edit preferences, using PreferencesModel in a table view
    and buttons to let the user interact.
    """
    def __init__(self, parent=None):
        QWidget.__init__(self, parent)
        self.ui = Ui_PrefEditor()
        self.ui.setupUi(self)

        self.pref_model = PreferencesModel()
        self.ui.pref_view.setModel(self.pref_model)

    @Slot()
    def add_pref(self):
        self.pref_model.add_empty_pref()
        # enter in edit mode for the pref name
        index = self.pref_model.index(self.pref_model.rowCount() - 1, 0)
        self.ui.pref_view.edit(index)

    @Slot()
    def add_prefs_from_file(self):
        fname = QFileDialog.getOpenFileName(
            self,
            "Choose a preference file",
            filter="pref file (*.json *.ini)",
        )
        if fname:
            self.pref_model.add_prefs_from_file(unicode(fname))

    @Slot()
    def remove_selected_prefs(self):
        selected_rows = sorted(
            set(i.row() for i in self.ui.pref_view.selectedIndexes()),
            reverse=True
        )
        for row in selected_rows:
            self.pref_model.remove_pref(row)

    def get_prefs(self):
        return self.pref_model.prefs[:]
class PreferencesWidgetEditor(QWidget):
    """
    A widget to edit preferences, using PreferencesModel in a table view
    and buttons to let the user interact.
    """
    def __init__(self, parent=None):
        QWidget.__init__(self, parent)
        self.ui = Ui_PrefEditor()
        self.ui.setupUi(self)

        self.pref_model = PreferencesModel()
        self.ui.pref_view.setModel(self.pref_model)

    @Slot()
    def add_pref(self):
        self.pref_model.add_empty_pref()
        # enter in edit mode for the pref name
        index = self.pref_model.index(self.pref_model.rowCount() - 1, 0)
        self.ui.pref_view.edit(index)

    @Slot()
    def add_prefs_from_file(self):
        fname = QFileDialog.getOpenFileName(
            self,
            "Choose a preference file",
            filter="pref file (*.json *.ini)",
        )
        if fname:
            self.pref_model.add_prefs_from_file(unicode(fname))

    @Slot()
    def remove_selected_prefs(self):
        selected_rows = sorted(
            set(i.row() for i in self.ui.pref_view.selectedIndexes()),
            reverse=True
        )
        for row in selected_rows:
            self.pref_model.remove_pref(row)

    def get_prefs(self):
        return self.pref_model.prefs[:]